Platforms

Why Instagram Stories and Reels Look Blurry (Fixes)

By the FixPixelatedVideos team · Invalid Date · 11 min read

Phone showing a blurry Instagram story next to a sharper one exported at 1080 by 1920

You film something that looks great on your phone. You post it as a Story or a Reel. Ten seconds later it looks like it was filmed through a screen door. Text is fuzzy, faces are soft and anything moving has a smear.

Instagram is not unusually bad. It compresses everything that goes through it, because it handles an unbelievable number of videos and has to keep them small. What makes the difference between a soft result and a decent one is what you feed it and which settings you leave on or off. Here is the list I would work through, in order of how often it solves the problem.

1. Turn on the quality setting that is probably off

Instagram has a setting that many people never find. In the app, go to your profile, open the menu, then Media quality, and switch on “Upload at highest quality”. Instagram’s help page describes it in nearly those words and warns that higher quality uploads may take longer.

When it is off, the app may send a reduced version of your video, particularly on a slow connection or on mobile data. That is a second round of compression before Instagram’s servers have even started theirs. Turning it on is the cheapest fix, and it takes ten seconds.

If you often upload on mobile data, either connect to Wi-Fi for the upload or accept the slow upload. A video that is compressed on your phone for speed cannot be un-compressed later.

2. Use the right size and aspect ratio

Instagram’s help center says Reels can have an aspect ratio between 1.91:1 and 9:16, with a minimum resolution of 720 pixels and a minimum frame rate of 30 fps. The recommended size, which is also what developer documentation lists, is 1080 by 1920 pixels. Stories use the same vertical frame.

A file smaller than that gets scaled up by Instagram, and scaling is a recipe for softness. A video recorded at 720 by 1280 and shown on a 1080 by 2400 phone screen is enlarged by about 50 percent. A file with the wrong shape gets cropped or letterboxed, and the visible picture area is smaller than you think.

What to do: export at 1080 by 1920, vertical. If you filmed horizontally, reframe in the editor so the subject fills the frame, rather than shrinking the whole shot into a vertical canvas with bars. The bars waste pixels, and the actual picture ends up less than half the screen.

3. Choose a sensible bitrate

Instagram’s developer documentation, which describes what its API accepts, lists a maximum video bitrate of 25 Mbps VBR, H.264 or HEVC, closed GOP, 4:2:0, progressive scan, and 128 kbps audio. That is the ceiling for files sent through the API, but it also tells you something about the design: they expect vertical HD at moderate bitrates.

I would aim for 10 to 16 Mbps at 1080 by 1920 and 30 fps. Higher than that is likely wasted, since Instagram will re-encode to its own targets. Lower than 6 or 7 Mbps starts to show blocks on busy scenes. I give the logic in what bitrate you need for 1080p. A vertical 1080 by 1920 frame has about the same number of pixels as a 1080p landscape frame.

Be careful with presets labeled “Instagram” in editing apps. Some of them export at 720p or at a few Mbps to keep files small.

4. Do not stack compression

Every step that compresses your video adds damage. Here is a typical chain that ends in mush: you shoot on a phone (compressed), edit in a free app that exports at a modest bitrate (compressed again), send it to a friend over a chat app (compressed again), they save it and post it to Instagram (compressed again, and Instagram’s compression is the strongest).

To keep the chain short: work from the original camera file, export once, and upload the export directly from your phone’s gallery or from your computer. Do not use a copy that has gone through a messenger. Do not use a screen recording of your own video; that adds a generation and a scale step.

5. Mind the camera settings

Soft footage is easier to ruin. If the video was recorded at 720p, the camera was moving fast, the light was poor or the lens was smudged, Instagram’s compression turns a weak source into a bad one.

A few habits help. Clean the lens, since a thumbprint creates a haze that no export setting can remove. Film in good light. Lock exposure and focus where you can. Use 1080p at 30 fps or 4K at 30 fps if your phone supports it, and avoid digital zoom, which is just cropping and enlargement.

If your phone offers a “high efficiency” or HEVC recording mode, that is fine for filming, but a few editing apps convert badly. If the problem appears only with clips from one phone, try the most compatible setting and compare.

6. Keep text and graphics away from the edges and fine lines

Instagram’s compression is rough on thin text. Small white text on a busy background, or a thin outline, gets muddy. Use larger fonts, put a subtle shadow or solid shape behind text, and avoid very thin typefaces. Keep important text inside the safe area, since the interface covers the top and bottom.

Animated text that flickers, shimmers or has a lot of tiny moving particles is expensive for the encoder. If your text effect looks sharp in your editor and soft on Instagram, simplify it.

7. Reduce grain and noise

Low-light shots are full of noise, and noise eats the bitrate budget. After Instagram’s compression, the result is smeared faces and blocky shadows. A light denoise before export helps. In my own noise test, a light denoise reduced the encoded size by about a fifth at the same quality setting, and a stronger one by more than two fifths, which meant the bits went to detail rather than grain. The details are in video noise reduction compared.

8. Fix a video that is already bad

If you only have a blurry video and cannot reshoot, there are things to try before posting. Clean it up: deblock, denoise, scale to 1080 by 1920 with a good filter, and sharpen mildly. Export at a decent bitrate, so that Instagram’s encoder starts from a clean, correctly sized file. This does not restore lost detail, but it prevents it from getting worse in the re-encode, and it avoids the enlargement that makes everything look soft.

On this site, you can upload a clip and get a free preview of that kind of cleanup, with a before and after comparison, before deciding anything.

9. Stories versus Reels versus feed posts

They share a vertical format but are processed a little differently. Stories are shorter lived and often look softer than Reels. Reels get more attention from the platform and seem to hold quality better when uploaded at 1080 by 1920. Feed posts allow other aspect ratios, such as 4:5, and a 4:5 video at 1080 by 1350 uses space well.

Upload length matters too. A very long video is compressed harder to save space. If a Reel is 90 seconds of busy footage, it will look worse than a 15 second one with the same settings.

Export steps in the apps people actually use

You can get a better result without a computer. Here is what I would set in the common mobile editors. Menu names change between versions, so look for the equivalent.

CapCut. On the export screen, choose 1080p (or 2K or 4K if you want a bigger master), set the frame rate to match your footage (30 is the usual choice for social video), and set the bitrate to Higher if the option appears. Leave the codec on H.264 unless you know the target handles HEVC. If you apply the “auto enhance” or sharpen effects, check the result at full size, because they can raise the noise.

InShot. Choose the highest resolution available, set the frame rate to 30, and pick the highest quality. Avoid the “compress” feature, which shrinks the file with a heavy hand.

iMovie on iPhone. There is not much to set beyond the quality of the export. Choose the largest size, and share to Photos or Files rather than sending directly through a messaging app.

Lightroom and photo-editing apps with video export. These often offer “Maximum” and “Medium” quality. Pick the maximum.

Desktop editors. Premiere, DaVinci Resolve and Final Cut can all export a vertical 1080 by 1920 file at 12 to 16 Mbps. Create the timeline at 1080 by 1920 from the start, rather than exporting a horizontal timeline and cropping afterward, since it saves you from scaling.

Whatever you use, do one thing in every case: export a test clip and look at it on a phone, at full screen. Instagram is a phone-first platform. A file that looks good on a laptop window may look different on the device where it will be seen.

A command line option for people who like it

If you have FFmpeg, you can prepare a clip for Instagram with one command. This one scales and pads a horizontal clip into a vertical frame, if you really must keep the whole shot:

ffmpeg -i input.mp4 \
  -vf "scale=1080:-2:flags=lanczos,pad=1080:1920:(ow-iw)/2:(oh-ih)/2:color=black" \
  -c:v libx264 -preset slow -crf 18 -maxrate 16M -bufsize 32M \
  -r 30 -pix_fmt yuv420p -c:a aac -b:a 128k -movflags +faststart \
  output_vertical.mp4

And this one crops the centre of a horizontal clip to fill the vertical frame, which keeps more actual picture:

ffmpeg -i input.mp4 \
  -vf "crop=ih*9/16:ih,scale=1080:1920:flags=lanczos" \
  -c:v libx264 -preset slow -crf 18 -maxrate 16M -bufsize 32M \
  -r 30 -pix_fmt yuv420p -c:a aac -b:a 128k -movflags +faststart \
  output_cropped.mp4

The -movflags +faststart option puts the index at the front of the file, which matches what Instagram’s developer documentation asks for (“moov atom at the front of the file”) and helps playback start quickly. The -maxrate and -bufsize options cap the peaks at 16 Mbps while CRF 18 sets the quality, which is a good fit for a platform that will recompress anyway. Note that cropping the center of a horizontal clip only works if the subject is in the middle. For other framings, use the crop=w:h:x:y form and set the x offset by hand.

Resolution myths for social video

“Higher resolution always gives better quality on Instagram.” Not necessarily. The app scales everything to a limited set of sizes, and a 4K upload is converted to a smaller size. A well-made 1080 by 1920 file is the sweet spot. A 4K file takes longer to upload and may be processed less gracefully on a weak connection.

“Uploading at 60 fps looks smoother.” It can, but the platform may convert it, and the extra frames take bitrate away from each one. For talking and lifestyle content, 30 fps is plenty. For sports and action, 60 fps is a better choice, with a bitrate bump.

“Lower the resolution to avoid compression.” No. A smaller file gets enlarged on the viewer’s screen and looks worse.

“The filter in the app makes it look better.” Some in-app filters add grain or sharpening that the encoder handles badly. If the result is soft after posting, test without them.

When blur is not compression

Occasionally the cause is not compression at all.

Focus. The camera focused on the background. A video where the subject is soft is not a bitrate problem. Tap to focus before recording.

Motion blur from a slow shutter in low light. Phones lengthen the exposure in dark scenes, and a handheld camera blurs. Brace the phone, or find more light.

A smudged lens. Wipe it with a soft cloth. This fixes more “quality” complaints than any setting.

Zoom. Digital zoom crops and enlarges. If your phone has a telephoto lens, use it, and otherwise move closer.

Screen protectors and cases over the lens. They can cause haze and reflections.

If a clip is blurry before you edit it, no export setting will fix it. A quick check is to look at the raw video in your gallery at full screen. If it is blurry there, the problem is upstream.

10. Check the result the right way

When you test, compare against a clean reference. Play the original export on your phone at full screen and view the posted version on the same phone at the same brightness. Ask a friend to open it too. Check on a different phone if you can, since some looks are due to the viewing device’s screen and app version.

Be careful about judging from the first seconds after posting. Instagram sometimes shows a lower quality version first and improves it as processing completes, and cached versions on your own phone may be less sharp than what others see.

A small experiment you can run in ten minutes

Rather than trust anyone’s settings, including mine, test your own pipeline. Take a clip of about ten seconds with a mix of detail and motion. Export it three ways: your usual settings, a 1080 by 1920 export at 12 Mbps, and a 1080 by 1920 export at 16 Mbps with a light denoise. Name the files so that you can tell them apart, but do not look at the names when you judge.

Post them to a private test account, or to Close Friends only, one after another, with the highest quality upload setting on. Then watch each on your phone at full brightness, in the same room, and note which one looks cleanest in the dark areas and on faces. Faces and shadows show compression damage first.

You may find that the first and second look identical, which tells you your usual settings were fine and the problem lies elsewhere, perhaps in the camera or the connection. Or you may find the third is clearly better, which tells you that a cleaner source pays off. Either result is more useful than guessing.

Keep notes. A short list of what worked for your camera, your editor and your style of content saves you from rediscovering it every time, and it makes it easy to spot when something changes after an app update.

Audio quality is part of the impression

A video with crisp picture and muddy sound feels low quality, and the reverse is also true. Instagram accepts AAC audio, and the developer documentation lists 128 kbps. Export at 48 kHz, avoid clipping, and keep voices clear above the music. If your Reel has background music at the same level as the voice, viewers will judge the whole thing as rough, even if the video is flawless.

Summary

Instagram compresses everything, so the goal is to feed it a clean, correctly sized, generous file and keep the chain short. Turn on “Upload at highest quality” in the media settings, export at 1080 by 1920 and 10 to 16 Mbps, avoid passing the file through chat apps, denoise grainy footage, simplify thin text, and test before the important post. If a clip is already weak, a cleanup pass before you upload gives the platform better material to work with.

Got a pixelated video right now?

Upload it and see a free before and after preview in about a minute.

Fix my video

Frequently asked questions

Why do my Instagram Stories look blurry?

Instagram re-compresses every upload, and a small or low bitrate file, a wrong aspect ratio or a phone camera upload done on a weak connection can look soft after that. Export at 1080 by 1920 and turn on upload at highest quality.

What size should Instagram Reels be?

1080 by 1920 pixels in 9:16, at 30 fps or higher, as MP4 or MOV with H.264 or HEVC. Instagram's own help page lists a minimum of 720 pixels.

What bitrate is best for Reels?

Instagram's API accepts up to 25 Mbps VBR. A practical target for 1080 by 1920 is 10 to 16 Mbps, since the platform will compress it anyway.

Where is the Instagram upload at highest quality setting?

In the app: Profile, Menu, Media quality, then switch on Upload at highest quality. Instagram notes that uploads may take longer.

Does posting from a third party app reduce quality?

It can. Each step that compresses the file adds a generation of damage. Upload one clean export directly from the Instagram app when quality matters.

Keep reading

Step-by-step guides · All articles · Pixelated video fixer