How to Get a Banner Under 150KB Without Turning It to Mush
Making a banner under 150KB is trivial when the design is flat and painful when it sits on a photo with a gradient and a soft shadow. Same layout, same pixels, a sixty-fold difference in weight. Here is where the kilobytes hide and how to get them back.
Why does a Google Display banner go over 150KB?
A banner goes over 150KB because of detail, not because of its pixel dimensions. Photos, grain, gradients and soft shadows give the encoder thousands of tiny differences to store, while flat colour and sharp text cost almost nothing. A 970×250 graphic with a solid background can weigh under 10KB.
The limit itself is not negotiable. Google’s uploaded display ad specifications give a maximum size of 150KB for every banner and accept GIF, JPG and PNG files. We checked that page on 23 October 2026. The size list on that page is long, but the weight limit is the same for all of it.
To see how much the content matters, we built one layout in Pillow: a headline, a green button, nothing else. Then we changed only the background and saved each version as PNG and as JPEG. This is a synthetic test, not a benchmark of your artwork, but the pattern is the one you will meet in real files.
| Background (970×250) | PNG | JPEG, quality 85 | JPEG, quality 70 |
|---|---|---|---|
| Flat colour | 8 KB | 13 KB | 11 KB |
| Smooth two-colour gradient | 21 KB | 17 KB | 13 KB |
| Photo-like, with fine grain | 490 KB | 90 KB | 56 KB |
Read the last row twice. Fine grain is what a photo, a paper texture or an AI-generated image full of noise looks like to an encoder, and it is the thing PNG handles worst. The same file is three times over the limit as PNG and comfortably inside it as JPEG.
You rarely have a size problem. You have a texture problem.
PNG, JPEG or GIF: which format keeps a banner under 150KB?
Use PNG for flat graphics with sharp text and few colours, JPEG for anything built on a photo or a gradient, and GIF only when you need animation. Google accepts all three. WebP, SVG and other formats are not on its list, so a file that compresses beautifully but has the wrong extension is still a rejected file.
| Format | Best for | Where it hurts |
|---|---|---|
| PNG | Flat colour, logos, crisp text, few colours | Photos and grain: the file balloons, as the 490KB row above shows |
| JPEG | Photos, gradients, soft lighting | Lossy: ringing and halos around text if quality drops too far |
| GIF | Simple animation | 256 colours per frame, so gradients band. Animated GIFs must run 30 seconds or less and slower than 5 frames per second |
The crossover is lower than most people expect. In the test above, even a gentle gradient was already lighter as JPEG than as PNG. Flat colour is the opposite: JPEG made the file bigger and added fuzz to the letters for no gain.
A static banner is also easier to keep light than an animated one, because every extra frame adds weight to the same 150KB budget. If you are weighing the two, the Display ad size guide covers what each file type has to meet.
What should you simplify in the design to shrink the file?
Simplify texture first, then effects, then colour count, and only after that touch the quality slider. Each step below is ordered by how many kilobytes it usually returns, and none of them makes the banner worse. Most make it clearer.
- Remove grain, noise and texture overlays. They add nothing at 300 pixels wide and cost the most.
- Put the photo in a smaller area. A product cut-out on a flat field is lighter than a full-bleed photograph, and the text gets a calm place to sit.
- Drop soft shadows, glows and blurs. A blurred edge is thousands of slightly different pixels.
- Keep gradients short and gentle. Two colours, low contrast between them. A long, dramatic gradient is both heavy and prone to banding once you reduce colours.
- Use one typeface and big type. Thin letters need high JPEG quality to stay clean, so heavy weights survive compression better.
- Cut elements. One message, one image, one button. The 320×50 strip cannot hold more anyway.
How do you compress a banner step by step?
Export at the exact size, try PNG first for flat artwork, switch to JPEG for photographic artwork, and lower quality in small steps until the file passes, stopping at the first value that fits. The highest quality that passes is the best you can have at that weight.
- Export at the final pixel dimensions, with no scaling afterwards.
- Flat artwork: save as PNG. If it is under the limit, stop. Do not compress what already fits.
- PNG still too heavy: reduce the palette (PNG-8, 64 to 256 colours) and look at the gradients for banding before you accept it.
- Photographic artwork: save as JPEG at 95, then 90, 85, 80. Take the first one under the limit.
- Still over at around 70? Go back to the previous section and remove detail. Quality below that is where text starts to smear.
- Leave some headroom. A file at 149.9KB is one copy edit away from failing, and tools disagree on whether a kilobyte is 1000 or 1024 bytes.
Free tools such as Squoosh or ImageOptim show the size next to the picture as you move the slider, which is all you need for the loop above. Doing it for eight sizes by hand is tedious, so MerryAd’s Banner Generator runs the same ladder for every file: PNG while it fits, otherwise JPEG at the highest quality that passes.
How do you check that a compressed banner still looks sharp?
Open the file at 100% zoom, not fit-to-screen, and check the three places compression damages first: the edges of the text, the logo, and any gradient. Then look at it at the size it will actually run, on a phone for the mobile strips.
- Text edges. Fuzz or a faint halo around letters means JPEG quality is too low for this design.
- Logo colours. Fringes and washed-out brand colours show up on saturated logos first.
- Gradients. Visible steps instead of a smooth fade mean the palette is too small or the quality too low.
- Smallest text. Read the 320×50 version on a real phone at arm’s length. If you squint, the problem is the copy, not the compression.
- Side by side. Put the compressed file next to the original. If you have to hunt for the difference, ship it.
Banner under 150KB: a checklist before you upload
Run this list on every size in the set, not on a single representative banner. The 970×250 and 300×600 are usually the heaviest, so check those first. Or hand the whole set to the Banner Generator and use the list as your final review.
- The file is GIF, JPG or PNG.
- The file is 150KB or less, with a little room to spare.
- The dimensions match the format to the pixel.
- Flat graphics are PNG; photographic ones are JPEG.
- No grain, noise or texture overlay on the background.
- Text is still crisp at 100% zoom.
- The logo and brand colours look right.
- The 320×50 version is readable on a phone.
- You re-checked the weight after the last edit.
If you build responsive display ads instead, the numbers are different: Google’s responsive display ad specifications allow image assets up to 5120KB each. The 150KB ceiling belongs to finished, uploaded banners. Sizes, names and placements for the uploaded set are in the Display ad size guide.
Frequently asked questions
- What is the file size limit for a Google Display banner?
- 150KB per file for an uploaded display ad, in GIF, JPG or PNG format, according to the uploaded display ad specifications on Google Ads Help (checked October 2026). Responsive display ad assets have a separate, much larger allowance of 5120KB each.
- Is PNG or JPEG better for a banner under 150KB?
- PNG is better for flat graphics with sharp text and few colours. JPEG is better for photos and gradients, where PNG becomes many times heavier. If your banner mixes both, test each: whichever passes the limit at the higher quality wins.
- Can I upload a WebP banner to Google Display?
- No. Google’s specifications for uploaded display ads list GIF, JPG and PNG, and WebP is not among them. Export the banner as PNG or JPEG instead, even if your design tool defaults to WebP.
- Why is my banner over 150KB even though it is small?
- Pixel dimensions matter less than detail. Grain, photo textures, soft shadows and long gradients are expensive to store, while flat colour is cheap. Remove the texture first, switch photographic banners to JPEG, and lower the quality in small steps.
- How do I get an animated GIF banner under 150KB?
- Use fewer frames, fewer colours and a flat background, because the whole animation shares the same 150KB. Google also requires animations to be 30 seconds or shorter and slower than 5 frames per second. A static banner is far easier to keep light.