Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
25 Million+
Websites using our plugins
Years of WordPress experience
WordPress tutorials
by experts

How to Increase the Maximum File Upload Size in WordPress

Editorial Note: We earn a commission from partner links on WPBeginner. Commissions do not affect our editors' opinions or evaluations. Learn more about Editorial Process.

Our readers often ask us to help them resolve issues related to file upload limitations. This simple website setting can have unexpected effects on your site.

For example, sometimes a low file upload size limit can stop you from uploading files with the media uploader or installing larger WordPress plugins and themes. This can be very frustrating, especially when you’re not sure how to change the limit.

In this article, we’ll show you how to easily increase the maximum file upload size in WordPress to fix those issues.

How to increase the maximum file upload size in WordPress

Why Increase the Maximum File Upload Size in WordPress?

Your WordPress hosting provider will set a default maximum file upload size when you sign up and install WordPress. Your hosting provider defines this limit, and it usually ranges from 2MB to 500 MB.

For most WordPress website owners, this limit will be more than enough.

However, there are times when you’ll need to raise this limit so you don’t run into upload errors.

For example:

That being said, let’s show you how you can increase the maximum file upload size on your WordPress site.

Note: Keep in mind that displaying a lot of large files on your website can seriously slow down its speed and performance. That’s why we typically recommend never to upload videos to WordPress.

Since most users have different WordPress hosting setups, we will cover the following:

Video Tutorial

Subscribe to WPBeginner

If you’d prefer written instructions, then just keep reading.

How to Check Your Maximum File Upload Size Limit in WordPress

WordPress will automatically show the maximum file upload size limit when you are uploading images or other media.

To check this, simply go to Media » Add New in your WordPress admin panel, and you will see the maximum file upload size limit for your WordPress site.

Check current file upload size limit

Now that you know how to find the size limit, let’s show you how to increase the maximum upload size in WordPress.

Method 1: Contact Your WordPress Hosting Provider

One of the easiest ways to increase the maximum file upload size in WordPress is to reach out to your WordPress hosting provider.

This is a relatively simple task for their customer service team and can be done in a couple of minutes.

For beginners, this can be much easier than adding code to WordPress and editing server files. 

Simply head over to your hosting provider’s website, like Bluehost, and log in.

Then, click the ‘Chat’ icon at the bottom of the screen. You can then ask the support staff to increase the file upload size on your WordPress site. 

Clicking the Bluehost live chat support button in the dashboard

You can also reach out to support from within your hosting account dashboard.

Method 2: Create or Edit an Existing php.ini file

Another way to increase the maximum file upload size is by creating or editing a file called php.ini. This file controls a lot of settings for your WordPress hosting environment.

Most WordPress hosting providers like Bluehost have a beginner-friendly cPanel to help manage your website.

If your web host has a cPanel dashboard, then you can increase the file upload size through the built-in tools.

Note: The following is from the Bluehost cPanel. However, most shared hosting providers will have similar steps.

You will find a cPanel button at the bottom of the Hosting tab in Bluehost.

Open cPanel in Bluehost

Clicking this button will open your cPanel dashboard.

Now you need to scroll down to the Software section and click on ‘MultiPHP INI Editor’.

MuliPHP INI Editor in Bluehost's cPanel

Next, scroll down to the section labeled ‘upload_max_filesize’ and enter a new maximum filesize into the box.

Then, click the ‘Apply’ button.

Upload Max Filesize Setting

Alternatively, you can click the ‘Editor Mode’ menu tab, and then you can change the maximum file upload size directly in the editor.

You need to edit the ‘upload_max_filesize’ section to increase your file upload size.

Once you are finished, just click the ‘Save’ button.

Change max upload filesize in code editor

Edit php.ini by Adding Code

If your current hosting provider doesn’t offer the cPanel option, then you’ll need to edit this file manually.

To do this, you can use an FTP client or the file manager option in your WordPress hosting control panel.

If you are using shared hosting, then you might not see the php.ini file in your hosting directory. If you don’t see one, then simply create a file named php.ini and upload it to your root folder. 

Then, add the following code snippet to the file:

upload_max_filesize = 256M
post_max_size = 256M
max_execution_time = 300

You can modify the ‘256M’ limit to the file size you need for your WordPress blog.

Method 3: Add Code to Your WordPress Theme functions.php File

This method involves adding code to your functions.php file in your WordPress theme.

Instead of editing the file directly, we recommend using WPCode. It’s the best code snippets plugin that allows you to add code to your website without breaking it.

If you haven’t done this before, then see our beginner’s guide on how to add custom code in WordPress.

First, you need to install the free WPCode plugin. For more details, see our step-by-step guide on how to install a WordPress plugin.

Upon activation, you should navigate to Code Snippets » + Add Snippet. You will need to hover your mouse over the ‘Add Your Custom Code’ option and then click the ‘Use snippet’ button.

Add a Custom Snippet in WPCode

On the next screen, you need to give your new snippet a name and change the code type to ‘PHP Snippet’.

Then you can copy and paste the following code snippet under ‘Code Preview’. Make sure you change ‘256M’ to the maximum file size you need:

@ini_set( 'upload_max_size' , '256M' );
@ini_set( 'post_max_size', '256M');
@ini_set( 'max_execution_time', '300' );
Save Your Custom Snippet in WPCode

Finally, switch the toggle at the top to ‘Active’ and then click the ‘Save Snippet’ button. The code will now be executed on your website.

Method 4: Add Code to Your .htaccess File

Another way to increase the maximum file size is by modifying the .htaccess file. This file controls the high-level configuration settings for your website.

To do this, you need to log in to your website server via FTP. If you haven’t done this before, then see our guide on how to use FTP to upload files to WordPress for beginners.

After that, you need to locate your .htaccess file in your website’s root folder. 

Open .htaccess file

If you can’t find your .htaccess file, then it could be hidden by your file manager or FTP client. To learn more, see our guide on why you can’t find the .htaccess file on your WordPress site.

Next, you need to add the following code snippet to your .htaccess file:

php_value upload_max_filesize 256M
php_value post_max_size 256M
php_value max_execution_time 300
php_value max_input_time 300

To increase your maximum file upload size even more, simply change the ’64M’ to the size you require.

Method 5: Use a WordPress Plugin to Increase File Upload Size

Another way you can increase the maximum file upload limit is by using the WP Increase Upload Filesize plugin. If you are not comfortable adding code to WordPress, then this could be a good option for you.

The first thing you need to do is install and activate the plugin. For more details, see our guide on how to install a WordPress plugin.

Upon activation, navigate to Media » Increase Upload Limit in your WordPress admin panel.

This brings you to a screen where you can select a new file upload size in the ‘Choose Maximum Upload File Size’ drop-down. 

Then, click the ‘Save Changes’ button.

Increase file upload size with plugin

Note: The maximum file upload size will be set by your hosting provider. If you need a file size limit that’s larger than the one listed in the drop-down, then you need to contact your hosting provider and ask to increase the limit. 

We hope this article helped you increase the maximum file upload size in WordPress. You may also want to see our guide on how to choose the best website builder and our expert picks of the best virtual business phone number apps with free options.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

Disclosure: Our content is reader-supported. This means if you click on some of our links, then we may earn a commission. See how WPBeginner is funded, why it matters, and how you can support us. Here's our editorial process.

Editorial Staff

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

The Ultimate WordPress Toolkit

Get FREE access to our toolkit - a collection of WordPress related products and resources that every professional should have!

Reader Interactions

408 CommentsLeave a Reply

  1. Syed Balkhi says

    Hey WPBeginner readers,
    Did you know you can win exciting prizes by commenting on WPBeginner?
    Every month, our top blog commenters will win HUGE rewards, including premium WordPress plugin licenses and cash prizes.
    You can get more details about the contest from here.
    Start sharing your thoughts below to stand a chance to win!

  2. Steve S says

    I figured out a work-around that does not involve messing with php.ini, .htaccess, functions.php, or any other systtem files. All I did was the following:

    * FTP the file up to /wp-content/uploads/year/month/filename.mp4
    * New Post –> Add Media –> Insert from URL
    * Cut and paste the appropriate URL based on where you uploaded the file.
    * Hit Insert Into Post. Done.

    • kenny says

      Perfect! ps if you are inserting an image for a slide background in slider Revolution, use option ‘External URL’

  3. Matt says

    Thanks. I want to also know how to make a website portal using wordpress. Any information from you will be highly appreciated.

  4. RT says

    Please try below steps as well after creating the php.ini

    (1) Go to My Sites -> Network Admin -> Settings from WordPress admin dashboard.

    (2) Uncheck the checkbox for “Site upload space: Limit total size of files uploaded to 10 MB” and Save changes.

    (3) Done.



  5. Abhishek says

    I’m on goddady hosting, none of the 3 solutions worked for me.
    But some users reported .user.ini file worked for them in goddady.
    can anybody tell me where to put this file?
    I have tried root folder and wp-admin folder nothing worked.

  6. DVR says

    If you are hitting a wall. Go to your host. Advance setting for PHP. Scan the code looking for max upload & file size. Change it to your required setting.


    See NICOLAS’ reply above.

    • martin kendall says

      Hi DVR I had tried everything and nothing worked, with what had been posted here. I tried multi times in every why to get it to work. Nothing, but your post put me on the correct answer. Thanks very much for that.
      Ok this is what i did, Signed into my host server, where my website is. the host server runs on cPanel and the theme is paper_lantern. It should not matter what your sever is or the theme. If you do not have access to this area you will have to get your host to make the changes y cotacting your technical help.
      In the panel you will have categories like = files, database, domains, email etc and what you are looking for is software, under software / apps look for multiPHP INI Editor or something like that. Its going to be different on other platforms but should be in that area. What you are looking for is configure PHP INI basic settings or editor mode. I got offered home directory or my domain name. I picked the domain name but maybe need to change both but I did not need to. Scrolled down to upload_max_filesize and changed to 64M but this did not work as you have to also change the momory_limit to 64M also. They have to be the same figure. and then it will work.
      Has I understand, when you make the changes in wordpress code. the instruction talk to your data base through the PHP files and instruct the server software to change the database settings. For some reason It would not work for me. So this route, bypass that and making the changes on the server software and not on the wordpress software. In future I will go this way as it was really quick. I hope this helps as a last resort. Martin p.s. this was WordPress 4.8.1 and I found that it did not have, after loading it any PHP.INI or .htaccess files. I did install them but made no difference and or where I put them.

  7. Gopi krishnan says

    For me, this is not working, but i did this in htaccess file in this way,

    php_value post_max_size 10M
    php_value upload_max_filesize 40M
    php_value memory_limit 500M

    This works !

  8. Michael Serovey says

    I have my websites hosted with GoDaddy and so far, NONE of the above suggestions have worked! I have paid for this plugin and now I that I wasted my money!

    • Paul says

      To avoid the plugin upload limit you can just upload the plugin with filezilla to your plugin directory. After uploading you can extract the zip file in the file manager and after you have done this the plugin is visible and ready to activate in your admin –> plugin panel

      Hope this helped.


      • Pooya says


        This worked perfectly for me!

        and it is MUCH easier and more reliable than any of those methods.

        just go to File Directory under the cPanel -> Public-html -> [ you site folder] -> wp-content ->themes or plugins

        Then upload the zip file here and extract it.

        login to your wp-admin dashboard. and bam, you got yourself the theme or plugin.

  9. Nicolas says

    Just go to your hosting control pannel -> Advanced -> PHP Settings -> upload_max_filesize ( it usually is on 2M you can change it up to 8M in my case… the point is that it shouldn’t be higher than your post_max_size)
    You are welcome!

  10. Steven Gliebe says

    functions.php is not the best place to put the code because raising the PHP max upload size limit is unrelated to a specific theme. Users shouldn’t be changing theme files directly anyway. wp-config.php is probably a better place. The .htaccess or php.ini method is even better (or just ask the host).

  11. Stephanie says

    php.ini needs to be in wp-admin folder. This article states it needs to be in the root, which I tried but it made no difference. FYI

    Thank you for the information!

  12. Matt says

    Worked Immediately! Thanks! By the way if anyone else wants to know, my host is BlueHost and I am using a Genesis Theme.

  13. Panagiotis Sakalakis says

    Using the .htaccess I got an Internal Error, and then I just removed the code and it fixed. After that, I created a php.ini file in /public_html/wp-admin, pasted the code and saved it. Everything’s work like a charm now and I can upload my files just fine without any problem.

  14. hol says


    Does anyone know why if the PHP.INI file is changed as mentioned why when the file has completed to 100% nothing happens and it displays http error.

    I can upload small files and small videos.
    I cant upload anything bigger than say 200mb

    I had this working and accepting larger files then I had a restore done on website.

    I have changed the PHP.INI…

    Is there any reason why just large files don’t work ?

    do I need to edit the hta.access file ?


  15. Ian says

    .htaccess method worked for Media Temple grid hosting, others didnt affect it, just in case anyones wondering…

  16. Jay says

    (In my case the problem was with WP MULTISITES)..,

    1. check your hosting limits (although this was not my problem) make sure your hosting allows the limit you are trying to set ie if on a shared hosting you might find the maximum is 64M.

    NOTE: The following solution may also apply If in WordPress, Maximum upload file size will not change even when changed in the php.ini file etc.

    The 1M max upload problem lies with WP MULTISITES default settings!!

    To change this, do the following to change the Maximum upload file size within WP admin:

    1. At the top, hover over My Sites and then click Network Admin.
    2. At the left, hover over Settings and then click Network Settings.
    3. Scroll to the bottom of the page and change the Max upload file size to whatever you would like in KB.
    4. Click Save Changes.

    Hope this helps :)

  17. AmanDeep Singh says

    Working !.I use Create or Edit an existing PHP.INI file method and after applying the settings as mentioned in the article now i am able to upload themes and plugins which are large in size.Thanks for sharing solution.

  18. Judy says

    I am new to WordPress, I usually use Joomla but I have a new client that wants a WordPress site. When trying to upload images the WordPress message was that the file limit was 3Mb. I spent hours searching websites for an answer. I am using WAMP and localhost to create the site. Through localhost phpinfo() I could verify which php.ini was active, the one in Apache. I had a file limit of 64Mb but still WordPress had a 3Mb limit. This site gave the instructions under #3 to edit the .htaccess file in the WordPress folder. I copied and pasted the text into this file and IT WORKED! Thank you wpbeginner.

  19. KenSanDiego says

    forgot to mention, my WP site is in a subdirectory with a domain pointer. Powweb’s php applies to everything in all subdirectories. So if you have any installations in subdirectories the change applies to all installations.

  20. Ugyen Zangmo says

    Create php.ini in wp-admin folder

    In the file put the following 3 lines:

    upload_max_filesize = 2048M
    post_max_size = 2048M
    max_execution_time = 3000

    Goto to your website as admin and check the upload new media page, it should now display Maximum upload file size: 2 GB.

    Thanks to Yasir Imran for sharing your tip!

    This worked for me. Thank you James for sharing the Yasir Imran tip. Cheers

    • Ben says

      Holy crap! Thanks so much man, after the last wordpress update to 4.3.1 my upload size reverted back to the default of 50 MB even though my php.ini, .htaccess, and wp-config.php files hadn’t changed and were still reflecting a max upload size of 512 MB! You’re a hero!

    • Alain says

      Thank you very much!
      I tried ALL of the three methods with no results.
      I asked the webhost and the raised the limit to 40 MB.
      Then, finally, I tried yours and it worked fantastically!

  21. dominio público says

    post_max_size should be larger than upload_max_filesize to allow room for other information. The defaults are 2MB max file size and 8MB max post size.

    From PHP’s documentation:

    post_max_size integer
    Sets max size of post data allowed. This setting also affects file upload. To upload large files, this value must be larger than upload_max_filesize.

  22. Dan says

    php.ini file worked perfectly for me. I simply changed the existing values to 100M. All good. Thanks for the advice.

  23. James says

    Create php.ini in wp-admin folder

    In the file put the following 3 lines:

    upload_max_filesize = 2048M
    post_max_size = 2048M
    max_execution_time = 3000

    Goto to your website as admin and check the upload new media page, it should now display Maximum upload file size: 2 GB.

    Thanks to Yasir Imran for sharing your tip!

  24. Zain says

    Please tell me the names of best themes for softwares/download sites?
    i am waiting.

  25. Markus Aurelius says

    Nothing of the above worked for me on GoDaddy so I had to use .user.ini instead of php.ini and that worked fine. Thanks for pointing me in the right direction!

  26. sam says

    1:- open “C:wampbinapacheapache2.4.9bin” folder and find “php” which is a configuration file and open it in ur notepad and again find “upload_max_filesize” and “post_max_size” and change both and save.

    2:- open “C:wampbinphpphp5.5.12” folder and find “php” and “phpforapache” which are configuration file and open both in ur notepad and again find “upload_max_filesize” and “post_max_size” and change both and save.

    3:- finally restart all services of wamp and enjoy…lov u all

  27. Decb says

    Hi Guys, I’m REALLY new to this but can you look at what I see when I click to edit the .htaccess file – where do i add the code? at the start? at the end? Do I put my cursor at the begining and click return (then put it in) ??? Please help

    • Gerard ONeill says

      Deb, it wouldn’t matter where you added it; but make sure its outside of a block. To be safe, just add it at the end.

      However, the better way (as of php5.5) is to modify the .user.ini file in a per directory basis. If you did the top level directory, it would apply to all sub directories (unless overridden).

      And obviously the system wide php.ini works too.

  28. BenPDX says

    +1 for Alex’s solution. Upload php.ini folder to wp-admin folder worked for me on Lithium Hosting. 30 second Google search and 1 min to create text file and upload to server!

  29. Vineesh says

    Hi alex, you are right. php.ini file should be added to wp-admin folder. It will work perfectly…. thanks alex

  30. Tony_atf says

    I keep getting http error even with your suggestion. im on godaddy I have filesize 300m but anything over 150Mb chokes. it uploads, sits for a few seconds and then the http error displays. wordpress never shows the error.

  31. Nitesh Magan says

    Hey I added the 1st code to my theme function file, but now everything on my site went blank. I cant even access my wp-admin of my site !!

    Please Help …

  32. Chris says

    If you’re just trying to upload files yourself in the admin panel (media), make a new plain text document, save it as whatever name (including extension) of the large file you’re trying to upload. So if you’re trying to upload “,” save a blank text document as Upload this blank text file you just created in WordPress. Then, go to FTP or file manager, go to wp-content/uploads/(whatever year it is)/(whatever month it is). You should fine there. Delete that file (which is just a plain text file) then upload the real, making sure the names match up. Then when you go back to media it will be the right file.

  33. Yasir Imran says

    I tried htaccess method and found 500 internal server error, then placed php.ini with 3 given lines in root directory, again didn’t work. Then I placed it in wp-admin folder and it worked. I think the author should mention it.

Leave a Reply to Mudassar Cancel reply

Thanks for choosing to leave a comment. Please keep in mind that all comments are moderated according to our comment policy, and your email address will NOT be published. Please Do NOT use keywords in the name field. Let's have a personal and meaningful conversation.