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

How to Change WordPress JPEG Image Compression

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.

Recently, one of our readers asked if it was possible to change the image compression setting in WordPress.

WordPress compresses your images by default for better performance. However, this will result in slightly lower quality.

In this article, we will show you how to increase or decrease JPEG image compression in WordPress.

Why Change WordPress JPEG Image Compression?

Every time you upload a JPEG image to your WordPress website, it automatically compresses the image to 90% quality. Way back in WordPress 4.5, this number was further decreased to 82% to improve site performance for mobile users.

If you are a photographer who wants to showcase high-quality images on your website, then you can turn off image compression in WordPress.

How to Disable Image Compression in WordPress

All you need to do is paste the following code into your theme’s functions.php file manually or by using a code snippet plugin like WPCode (recommended).

If you haven’t done this before, you may like to see our guide on how to add custom code to your WordPress website.

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

Upon activation, you need to navigate to Code Snippets » + Add Snippet in your WordPress dashboard. After that, you should hover your mouse over the ‘Add Custom Code’ template and then click the ‘Use Snippet’ button.

Adding a New Snippet in WPCode

This will take you to a new screen where you can create your custom snippet. You need to add a title to the snippet, such as ‘Disable Image Compression in WordPress’.

After that, you should select ‘PHP Snippet’ from the Code Type drop-down menu, then paste the following code snippet in the ‘Code Preview’ pane.

add_filter('jpeg_quality', function($arg){return 100;});
Disabling Image Compression Using WPCode

When you set the value to 100, WordPress will compress the image at its highest quality.

Finally, you need to click the toggle switch at the top of the screen from ‘Inactive’ to ‘Active’ and then click the ‘Save Snippet’ button.

Congratulations, you have disabled JPEG compression on your WordPress site.

If you are not a photographer or an artist, then you would probably not see much of a difference in quality. But for those who work with high-quality images on a daily basis, the difference in quality is obvious.

How to Increase Image Compression in WordPress

There are definitely performance benefits to leaving the compression quality as is. But if you want, you can change the number from 100 to 80 or something lower to compress your images more and save a little space.

Simply create a new WPCode snippet as you did in the previous method, and then paste the following code:

add_filter('jpeg_quality', function($arg){return 75;});
Increasing Image Compression Using WPCode

Once you make the snippet active and save it, your JPEG images will be compressed to smaller file sizes. The images will appear at a lower quality, but you will save space on your web server.

Tip: When you make these image quality changes, you also want to make sure that you regenerate your thumbnails.

We hope this article helped you learn how to change JPEG image compression in WordPress. You may also want to see our guide on how to create a contact form in WordPress or our expert pick of the best Instagram WordPress plugins.

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

51 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. Tom says

    I tried this so many times, and many different variations of this code but it never works. I don’t know what else to do. Every time I upload a photo, I can see that the quality is blurrier. Do you have any other tips?

      • Tom says

        Thanks for the reply. Just an update: It turns out it was my hosting company that was compressing my photos. They had a CDN feature that was automatically enabled that I didn’t know about. After I disabled it, my photos are fine now.

  3. Purnendu Mukherjee says

    Hi,
    If we use a image compression plugin like Smush, Optiomole or any other, will my images be compressed twice (once by WordPress and then by the plugin)??

    • WPBeginner Support says

      You would want to check with the support for the plugin you plan to use but most should have the ability to cancel the standard compression.

      Admin

  4. Rigsby says

    Hello, once the php is added, will that override any image compression plugin that is installed at a later date or does the plugin override the code? It will be hard to remember that your php was once added a long time ago, and therefore it may cause headaches wondering why the plugin isn’t working correctly.

    Thanks : )

  5. Tom says

    ” If you want, you can change the number from 100 to 80 or something lower… then all you have to do is paste the following code:”

    ADD THE CODE WHERE???

  6. rob says

    Hi – Do images need to be reuploaded for it to take effect?
    Also, will this work for png images or do I need to change jpeg to png in the php code?
    Thanks

    • WPBeginner Support says

      This would only apply to new images and not your current images and you do not have to worry about PNG compression.

      Admin

  7. puspa chaulagai says

    hey, I am from love and fun quotes I found your article while I searching for how to stop auto compressing images on WordPress. I try your code but it still not working. When I change the theme it’s work but in which theme I apply it doesn’t work. How to remove auto image compress by theme please help.

    • WPBeginner Support says

      You would want to reach out to the support for your specific theme for them to be able to assist with their specific compression.

      Admin

  8. Heather Wilson says

    Hello,

    I am working with wordpress.com – can you do this through the customizing CSS menu, and if so how? I am brand new to coding.

  9. Karlo Gavric says

    Even I change compression to 100, my images looks so bad in quality, only if I use full sized (widht 1300+px) is OK, but if I use Large file which is 900px, it is horrible.

    I added code to change compression in functions.php, contacted my theme supplier and hosting support, they don’t have any compressions turned on.

    Any ideas?

      • Karlo Gavric says

        Hi,

        I’ve tried it, but the problem still persists. Tried also just changing a theme with plugins enabled / disabled, no change (?! feeling confused really ?!)

        • nospampls says

          you need to set your large file size to a higher image size. wordpress will automatically crop your images…

  10. Anne says

    what does this mean

    Unable to communicate back with site to check for fatal errors, so the PHP change was reverted. You will need to upload your PHP file change by some other means, such as by using SFTP.

    Thank you

    • Eoin says

      It means that you need to use an external editor to edit the files because the WordPress editor is restricted.. There are plugins available for editing theme files through the wordpress admin which you can look up on the Add New Plugin page, otherwize, you need to download your theme files using a FTP software, update the functions.php file and upload it back to the theme folder on the server. If you are not sure about FTP, I would just look for an theme editor plugin so you can do it in the wordpress admin, but make sure to deactivate the plugin when you are finished to prevent any security issues.

  11. Devi Chand says

    Hi,

    My product images looked blurred because they are already optimised and wordpress was optimising them again (I believe). I used the above code and also regenerated the thumbnails. Initially, I could not find the changes. However, later the images started showing up the way I wanted (not blurred, perfect) for some time. But I check again and the images are all looking blurred again. Can you help?

  12. Bjornen says

    Hi!

    So, is there a solution to having WP not up-scaling the image size (kb/mb) when uploading via “Media” in WordPress?

    Meaning; I want WP to scale the picture into thumb nail, medium and large and to keep the original as it does per default, but NOT to up-scale the thumb ail, medium or large file sizes?

    Thanks!

  13. Mike says

    I added this code exactly how you showed it and now it won’t let me upload photos an error message keeps coming up. please help! Thanks!

  14. Yara says

    Hi

    Do you know if is possible to improve the quality of the image in wordpress.com in free version?

    Thanks

  15. Mélanie says

    Hi, I use this code and regenerated all my images, but unfortunatly, the size of my image is the same. I use enfold theme and my WP version is 4.7.2. Did I miss a step?

  16. Luke Cavanagh says

    Setting the level to 92 or 90 is fine, the default used to be 90 was was lowered down to 82.

  17. Alessandro says

    Hi, I have added the code as showed in the video but, nothing, WordPress keeps reducing the size of my images.

    Any other option?

    Thanks for your support
    Alessandro

  18. Lukas Priyambodo says

    Quality 100 doesn’t always mean highest quality, because of JPEG algorithm and what kind of content of the image. Using SSIM, I sometimes found that quality 95 has better score than quality 100 or at least quality 95 has better filesize trade off compare to quality 100.

  19. Jaime says

    Hi there. Are you able to disable image compression if you have a free WordPress account? If so, where do I find my function’s php file?

  20. M.Mairaj says

    Thanks for sharing such a fantastic post about image Compression in WordPress. All the tips are really very very worthwhile.

    Keep sharing :)

    Regards

    Mairaj

  21. Peter says

    Don’t follow this advice! I added this line of code in my functions.php file and now I get this message when loading my website!

    Parse error: syntax error, unexpected T_STRING in /home/sittin11/public_html/wp-content/themes/Divi/core/functions.php on line 44

  22. karl says

    Let’s clear up some things.
    1 – WP does not mess with your original uploaded file. The compression levels discussed are for WP generated images – the TN, Med, Large in your WP media settings.

    2 – if you change the compression settings, WP does not reprocess all your current uploads. That’s why you run Regenerate Thumbnails.

    3 – I will challenge any photographer to see the quality difference between 100 and 90 in a JPG. In rare cases, you may. But for 99% of images you’ll never tell.

    4 – Depending on your theme and your media settings, yes, some smaller image sizes will be cropped from your orignal upload. It’s the nature of the beast. If your TN is square and you upload a horizontal phjoto, of course it will be cropped. Cropping your images BEFORE uploading – and using a proportion compatible with your theme layout – will net you fewer issues.

  23. chang hong says

    hello, can you tellme why wp crop every image that i upload? how can i prevent it! thank you

  24. Dave Porter says

    Thanks for the article, very useful to know.

    I’m interested in the comment about ‘make sure you regenerate your thumbnails’

    If an image is uploaded at say 82%, regenerating the thumbnails does what?

    And I assume that after changing the percentage, this is only going to be for new images?
    I would guess any existing images would remain at the same quality, or does WordPress keep a copy of the original uploaded?
    TIA, Dave

  25. Michael says

    Is it possible to disable image compression in WordPress?
    The article has a headline saying so, but then it describes it as “least compression”, that is not disabling compression…just wondering it is possible to disable compression for uploaded pictures…

  26. Thomas says

    Great Tips, thank you.
    I have one more question: If I upload images to WP that are already compressed (say to 90%) – will they be compressed again (82% of 90% = 74.8%)?

Leave a Reply to Thomas 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.

WPBeginner Assistant
How can I help you?

By chatting, you consent to this chat being stored according to our privacy policy and your email will be added to receive weekly WordPress tutorials from WPBeginner.