How to Create a WordPress Form with File Upload

Disclosure: This post may contain affiliate links. Purchasing a product through one of these links generates a commission for us at no additional expense to you.

You’re in luck!

Creating a form in WordPress is easy and adding a file upload form can be simple too with the right tools.

In this tutorial, you’ll find a few ways to create a simple (or complex) form using WordPress plugins and how to include a file upload field to your form.

How to create a form in WordPress

Not all form plugins have a file upload option, so you’ll want to start by selecting the right plugin.

I recommend the awesome WPForms which is my favorite plugin for creating forms with WordPress.


The drag-and-drop functionality is excellent and it includes a massive amount of features. I won’t bore you with all the details, but you can read my full WPForms review if you want to know more.

You can find more file upload plugins here if you want alternative recommendations.

Create the form

With the WPForms plugin installed, you’ll see its menu item added to your dashboard.

WP Forms Menu Item

Pressing the Add New menu item will take you to the beautiful form builder where you can create a new custom form.

WP Forms Add Form

There are a few starter templates you can choose from, or you can simply choose the Blank Form option to start with a clean slate.

You can see a lot more in my review, but let’s jump straight to the file upload option.

Adding the file upload option

I’ve selected the Simple Contact Form option to create a basic contact form. On the left side, you can see the File Upload field which can be dragged-and-dropped anywhere on the right to add it to the form.

WP Forms File Upload

Once the upload field has been added, you can click on it to show all of the customization options including the label, description, allowed file extensions, and maximum file size.

File Upload Field Options

There are a few advanced options as well which allow you to hide the label, add CSS classes, and choose to store the uploaded files in your Media Library.

Normally, you will be able to view any entry in your dashboard to check the file uploaded. The option to have the uploaded files go directly to your Media Library is interesting and would work great if needed.

That’s honestly all you have to do to make your form with the file upload option. Next, you can display it somewhere on your site.

How to display the form

Every time you create a form, a unique shortcode will be generated. You can always find the shortcode in the All Forms menu.

WPForms Shortcodes

As you may know, the shortcode can be copied and pasted into any post or page to display the form content on your site. If you’ve never used shortcodes before you can follow this quick tutorial on using shortcodes to get up to speed.

There’s also a WPForms widget which you can add to any widget area included in your theme. It has a simple dropdown selector you can use to select any form you’ve created.

Alternative file upload options

While WPForms is an awesome form builder plugin with file upload fields, there are plenty of other reliable choices.

For the best alternatives, check out this collection of the best file upload WordPress plugins. It includes five more plugins that you may prefer to use for your site.

To add this kind of option to an eCommerce shop, check out the extensions in this collection of WooCommerce file upload plugins.


Like most things in WordPress, this dilemma is easily solved with the right plugin.

Creating simple and complex forms alike is easy with the WPForms plugin or one of the other alternatives. If you like the solution you’ve seen in this post, click here to learn more about WForms.

I’m sure you’ll enjoy it for many different purposes, such as forms with file uploading, payment forms, or even customer feedback.

Ben Sibley
Ben Sibley
Ben Sibley is a WordPress theme designer & developer, and founder of Compete Themes.