Very Simple Contact Form



This is a lightweight plugin to create a customized contact form.

Add shortcode [contact] on a page or use the widget to display your form.

Form only contains fields for Name, Email, Subject and Message. And a simple numeric captcha.

You can personalize your form via the settingspage or by adding attributes to the shortcode or the widget.

It’s also possible to list form submissions in your dashboard.

How to use

After installation add shortcode [contact] on a page or use the widget to display your form.


Via Settings > VSCF you can:

  • Change admin email address
  • Keep form submissions and settings when uninstalling plugin
  • Activate the listing of form submissions in your dashboard
  • Activate confirmation email to sender
  • Activate a privacy checkbox on form
  • Disable the collection of IP address
  • Scroll back to form position after submit
  • Change form labels and messages

Settings and labels can be overwritten when using the relevant (shortcode) attributes below.

This can be useful when having multiple contact forms on your website.

Atributos del shortcode

  • Cambia el correo electrónico del administrador: [contact email_to="your-email-here"]
  • Varios correos electrónicos: [contact email_to="first-email-here, second-email-here"]
  • Change “From” email header: [contact from_header="your-email-here"]
  • Hide subject field: [contact hide_subject="true"]
  • Change email subject: [contact subject="your subject here"]
  • Activate confirmation email to sender: [contact auto_reply="true"]

Field labels:

  • Change name label: [contact label_name="your label here"]
  • Change email label: [contact label_email="your label here"]
  • Change subject label: [contact label_subject="your label here"]
  • Change captcha label: [contact label_captcha="your label here"]
  • Change message label: [contact label_message="your label here"]
  • Change privacy label: [contact label_privacy="your label here"]
  • Change submit label: [contact label_submit="your label here"]

Field error labels:

  • Change name error label: [contact error_name="your label here"]
  • Change email error label: [contact error_email="your label here"]
  • Change subject error label: [contact error_subject="your label here"]
  • Change captcha error label: [contact error_captcha="your label here"]
  • Change message error label: [contact error_message="your label here"]

Form messages:

  • Change sending failed message: [contact message_error="your message here"]
  • Change sending succeeded (“thank you”) message: [contact message_success="your message here"]
  • Change “thank you” message in confirmation email: [contact auto_reply_message="your message here"]

You can also add multiple attributes. Separate multiple attributes by using a single whitespace.

  • Example: [contact email_to="your-email-here" subject="your subject here"]

Atributos del widget

The widget supports the same attributes. You don’t have to add the shortcode itself or the brackets.

Example 1:

  • If shortcode attribute is: [contact email_to="your-email-here"]
  • Widget attribute will be: email_to="your-email-here"

Example 2:

  • If shortcode attribute is: [contact email_to="your-email-here" subject="your subject here"]
  • Widget attribute will be: email_to="your-email-here" subject="your subject here"

List form submissions in dashboard

Via Settings > VSCF you can activate the listing of form submissions in your dashboard.

After activation you will notice a new menu item called “Submissions”.


SMTP (Simple Mail Transfer Protocol) is an internet standard for sending emails.

WordPress supports the PHP mail() function by default, but when using SMTP there’s less chance your form submissions are being marked as spam.

You should install an additional plugin for this. You could install for example:

Because I’m not the developer of these SMTP plugins, I will not give support. And use them at your own risk.


If you uninstall plugin via dashboard all form submissions and settings will be removed from database.

All posts of the (custom) post type “submission” will be removed.

You can avoid this via Settings > VSCF.


Please take a look at the FAQ section.


No está incluido pero el plugin es compatible con los paquetes de idioma de WordPress.

More translations are very welcome!


Sin la ayuda del codex de WordPress y la ayuda de la comunidad WordPress no habría sido capaz de desarrollar este plugin así que ¡gracias!



  • Very Simple Contact Form (Twenty Seventeen theme).
  • Very Simple Contact Form (Twenty Seventeen theme).
  • Very Simple Contact Form widget (Twenty Seventeen theme).
  • Very Simple Contact Form widget (dashboard).
  • Very Simple Contact Form settingspage (dashboard).
  • Very Simple Contact Form settingspage (dashboard).
  • Very Simple Contact Form settingspage (dashboard).
  • Very Simple Contact Form submissions (dashboard).


Please check Description section for installation info.

Preguntas frecuentes

About the FAQ

The FAQ applies to the most recent plugin version, as they are regularly updated to include support for newly added or changed plugin features.

How do I set plugin language?

Plugin will use the site language, set in Settings > General.

If plugin isn’t translated into this language, language fallback will be English.

What is the default email address?

Por defecto, los envíos del formulario se envían al correo electrónico del administrador (definido en Ajustes > Generales).

You can change this via Settings > VSCF or by using an attribute.

What is the default email subject?

By default the email subject contains the name of your site, followed by the subject that sender has filled in. If subject field is hidden it only contains the name of your site.

You can change this by using an attribute.

This subject will also be used in the confirmation email to sender.

Why is the “from” email address not from sender?

I have used a default so called “From” email header to avoid form submissions being marked as spam.

Best practice is using a “From” email header (an email address) that ends with your site domain.

That’s why the default “From” email header starts with “wordpress” and ends with your site domain.

You can change this by using an attribute.

Your reply to sender will use another email header, called “Reply-To”, which is the email address that sender has filled in.

What do you mean with “thank you” message?

A “thank you” message is displayed after submitting the form and in the confirmation email to sender.

It’s the message: Thank you! You will receive a response as soon as possible.

You can change this via Settings > VSCF or by using an attribute.

How does the captcha work?

The captcha is a random number that changes every day.

In older plugin versions it changed every session. But the capcha has been simplyfied, because it’s not using a PHP session anymore.

Can I display multiple forms on the same page?

Do not add multiple shortcodes on the same page. This might cause a conflict.

But you can display a form by using the shortcode and a form by using the widget, on the same page.

Why does form submission fail?

An error message is displayed if plugin was unable to send form. This might be caused by the settings of your server.

Your hosting provider might have disabled the PHP mail() function of your server. Please contact them for info.

They might advice you to install a SMTP plugin. For more info check the “SMTP” section.

Why am I not receiving form submissions?
  • Please also check the junk/spam folder of your mailbox
  • Check installation info above and check shortcode (attributes) for mistakes
  • Install another contact form plugin to determine whether it’s caused by my plugin or something else
  • In case you’re using a SMTP plugin, please check their settingspage for mistakes
Does this plugin has anti-spam features?

Of course, the native WordPress sanitization and escaping functions are included.

It also contains 2 (invisible) honeypot fields and a simple numeric captcha.

Does VSCF meet the conditions of the GDPR?

The General Data Protection Regulation (GDPR) is a regulation in EU law on data protection and privacy for all individuals within the European Union.

I did my best to meet the conditions of the GDPR:

  • You can activate a privacy checkbox on form
  • You can disable the collection of IP address
  • Form submissions are safely stored in database, similar to how the native posts and pages are stored
  • You can easily delete form submissions from database
Why no Semantic versioning?

At time of initial plugin release I wasn’t aware of the Semantic versioning (sequence of three digits).

How can I make a donation?

You like my plugin and you’re willing to make a donation? Nice! There’s a PayPal donate link at my website.

Other question or comment?

Por favor, abre una consulta en el foro del plugin.


Its great but some things are missing..

– Simple and Clean
– lightweight
– you can read submissions on dashboard

– you cant hide label email, name, message etc. only hide subject field is possible
– you cant turn off email function. i only wanna read submissions on my dashboard. i dont need a copy to my mail address.

Not a useful form because of the automated email recipient setup

I found this form very easy to use, but one of the biggest problems for our company is that the form is automatically set to send to the site admin. In many businesses, the site admin is not the person who deals with customer service or website inquiries. This just puts added burden on the site admin to review and forward the form submission.

As later noted by Guido:
There is a workaround to change the email recipient in the short code

However, that is not intuitive, and it is not built into the program as most other contact/form plugins have done. So my review remains at three stars.

Drop-in replacement for resource-heavy Contact Form 7

BRILLIANT plugin. Having confirmed the veracity of claims that Contact Form 7 (CF7) is a BIG resource hog, I replaced it with this – Very Simple Contact Form (VSCF). Not only is VSCF lighter…it’s even SIMPLER than CF7!

I’m using Elementor, btw. Type in ‘very…’ in the Elements search box and the plugin element appears. Simply drag the element over and BAM! You have a contact form.

The new contact form immediately occupied the same area the CF7 one did. Thus, this was a drop-in replacement, with a load off resources. Uninstall that bloated CF7 and use this instead.

I am happy !!

This plugin working together ideally without this plugin – WordPress Easy SMTP.
respect for author. Thank you !!


The form is easy to install and works quite fine. I had a small issue which, perhaps, was due to my own server. The plugin is not cluttered with extra features but it is very flexible, which is a plus. The GDPR compliant privacy checkbox is a plus as well. And, last but not least, Guido (its author) is definitely very kind and prompt in answering. Most suggested!

Leer todas las 30 reseñas

Colaboradores y desarrolladores

“Very Simple Contact Form” es un software de código abierto. Las siguientes personas han colaborado con este plugin.


“Very Simple Contact Form” ha sido traducido a 21 idiomas. Gracias a los traductores por sus contribuciones.

Traduce “Very Simple Contact Form” a tu idioma.

¿Interesado en el desarrollo?

Revisa el código , echa un vistazo al repositorio SVN , o suscríbete al log de desarrollo por RSS .

Registro de cambios

Version 9.5

  • fix: mistake in query string parameters (thanks Marie)
  • removed both CSS classes mentioned in last update

Version 9.4

  • fix: removed function and action to add query args
  • I was using this for the wrong reason
  • thanks rermis for informing me
  • form gets the query string parameters via the GET method now
  • new query string parameters for page and widget
  • thank you: when using the shortcode it’s “vscfsp=success” and when using the widget it’s “vscfsw=success”
  • server error: when using the shortcode it’s “vscfsp=fail” and when using the widget it’s “vscfsw=fail”
  • changed CSS class “vscf-sidebar” into “vscf-widget”
  • changed CSS class “vscf-sidebar-text” into “vscf-widget-text”
  • changed both classes because of relevance
  • I will remove the old classes in next update

Version 9.3

  • removed some values I forgot to remove last update
  • some minor textual changes

Version 9.2

  • rebuild the process after form is processed (thanks Arjan)
  • the thank you message is now generated via javascript
  • and a query string parameter is added to the URL of your contact page
  • when using the shortcode it’s “vscfsp=true” and when using the widget it’s “vscfsw=true”
  • this can be useful when using a website statistics / analytics program
  • the same applies to the server error message
  • when using the shortcode it’s “vscfep=true” and when using the widget it’s “vscfew=true”
  • the capcha has been simplyfied, because it’s not using a PHP session anymore
  • it now changes every day, instead of every session
  • added setting to change admin email address
  • added setting to scroll back to form position after submit
  • removed attribute scroll_to_form because of feature above
  • the scrolling of this so called form anchor is done by javascript
  • added minified css file in folder css (kept the original css file for reference)
  • removed unnecessary whitespaces from most files

Version 9.1

  • file vscf-style: removed reset CSS from the #vscf wrapper
  • did this to avoid a conflict with Twenty Nineteen theme
  • added new icon for form submissions in dashboard
  • some textual changes

For all versions please check file changelog.