Stop Windows 8 from converting wallpapers to low quality JPGs

New answer (July 18th, 2016):

Dunno who first found it, but here's a nice writeup: https://m.reddit.com/r/pcmasterrace/comments/4azlwr/tired_of_windows_compressing_your_wallpapers_in/

Steps to do this:

1) Hit WIN+R or search

2) Enter "Regedit.exe" and hit enter

3) Go to where I am in the picture (HKEY_CURRENT_USER>Control Panel>Desktop)

4) Right click on desktop and select new DWORD

5) Call it "JPEGImportQuality"

6) Set it to 100 (decimal - not hex)

7) Close regedit

Your registry should look like that now (with the new value highlighted):

Screenshot of the registry with the new DWORD value in place

Restart (or log out and back in, I just restarted) and re-set your wallpaper. It'll look better, but behind the scenes, it's still just a re-encoded JPEG, so don't expect any miracles.


The following answer is outdated. While it's probably still the best way of doing things because Windows can't even touch your files that way, there's another way above.

Old answer (October 25th, 2014):

There was an answer here, I even upvoted it and accepted it as the correct answer, but it seems to have vanished. It went like this:

Open X:\Users\<User>\AppData\Roaming\Microsoft\Windows\Themes\. The TranscodedWallpaper file inside is a JPG image without a file extension, replace it with a 100%-JPG version of the wallpaper you want to use.

Then, open the CachedFiles folder. Inside should be one or more JPG files, each named like this: CachedImage_2560_1440_POS4.jpg (substitute the numbers with your resolution's width and height). Find the one that matches your active resolution, copy its filename, then delete all the files. Copy your wallpaper's JPG version into this folder as well and rename it to whatever you just copied. The actual resolution of the wallpaper does not matter; as far as I could tell, Windows just reuses whatever wallpaper setting was set. ('Fill' for me)

To make your wallpaper just work (and also to stop the OS from undoing what you've done so far) you'll need to revoke the system user's write access. To do that, fiddle with the security settings of the TranscodedWallpaper file and the CachedFiles folder until it looks like this:

Properties dialog for CachedFiles

I don't know what these options are called in English versions of Windows, but I imagine their positions to be the same. The first combobox says 'Allow', the second one makes it so that the permissions are applied to all files and folders inside that folder recursively.

When you're done, log out, then log back in again. If you did everything right, your wallpaper shouldn't look like garbage anymore.

"Look ma, no artifacts!" (Wallpaper taken from Louie Mantia's wallpaper page)

Obviously, there are drawbacks to this method, namely:

  • You have to go through all this permission nonsense every time you change the wallpaper (you might be able to automate this through batch scripts, but I have no idea how to do that)
  • You won't be able to use wallpaper slideshows (at least not the native sort)
  • You can't use actual PNG images, you have to use JPGs

Let's just hope Windows 10 won't be such a colossal disappointment in that regard.


I had this problem myself, searched endlessly for an answer and found none. Until I found someone who did not have this problem, I asked them to share their wallpaper with me and I tried it, sure enough, their wallpaper did not have any on screen artifacts and the resulting compressed wallpaper, was not a shrunken down jpg. In fact, the file size of the "compressed" jpg was larger than the original.

So I decided to look around into the settings on the jpg, nothing unusual that I could see, the image was 1900x1200 at 72.009dpi and 8bit. I decided to scale down my own personal wallpapers to the 1900x1200 size, changed the dpi and bitrate to match the other jpg. After saving my new image, I right clicked on it and chose set to desktop, the resulting image has no artifacts and is no longer compressed. This works for every wallpaper I have.

If you try this, I think you need to make sure you change the image dimensions to match that of what your screen resolution is exactly. Also making sure the dpi is set to 72.009 and 8bit. Try it out, see if this helps anyone. I will be posting this message on all the forums and blogs I see discussing this.


In Windows 7, opening the image using internet explorer, then right-click: 'set as background image', used to do the trick.

This seems to do the same thing (unconfirmed) as manually setting the registry value.