If you want to know how to make pixel art not blurry, start with this: something between your canvas and the screen is smoothing pixels that were meant to stay square. Pixel art is built from individual pixels as its only building block, so any step that blends neighboring pixels together turns crisp edges into soft mush. The fix is rarely about drawing differently. It is about finding the one setting that is quietly averaging your colors, and switching it off.
This guide walks through every place blur sneaks in: resizing in your art app, exporting, the browser, and game engines like Phaser, Three.js, Godot and Unity. Then it covers the hardest case, AI-generated “pixel art” that was never on a real grid to begin with.
Why does pixel art look blurry?
Every time an image is drawn at a size other than its native size, software has to decide what color each new pixel should be. That decision is called interpolation (or resampling). There are two broad approaches:
- Smoothing interpolation (bilinear, bicubic): each new pixel is a weighted average of several original pixels. Great for photos, terrible for pixel art, because a hard black outline next to a yellow fill becomes a muddy brown gradient.
- Nearest neighbor: each new pixel copies the single closest original pixel. A 1-pixel dot becomes a clean 3×3 block at 3x scale. No new colors appear.
Almost every image editor, browser and engine defaults to smoothing, because most images are photos. That is why the problem feels random: your art is fine, the defaults are not built for it.
Here are the usual culprits, roughly in the order people run into them:
- Resizing with bilinear or bicubic in Photoshop, Krita, GIMP or Procreate.
- Non-integer scale factors, like 2.5x or 150%, which make some pixels wider than others even with nearest neighbor.
- Saving as JPEG, which compresses in blocks and smears hard edges.
- Anti-aliasing while drawing: soft brushes and anti-aliased selections add in-between colors along edges.
- Browser or engine texture filtering, which smooths the image when it is drawn larger than its native size.
- Sub-pixel positions: a sprite drawn at x = 10.4 instead of 10 gets resampled across two screen pixels.
- Fake pixel art from AI image models, where the “pixels” are uneven sizes and the colors blend at every edge.
Knowing how to make pixel art not blurry mostly means checking that list from top to bottom until the edges come back.
How to make pixel art not blurry when you resize it
Two rules cover almost every resizing problem:
- Always use nearest neighbor.
- Always scale by a whole number (200%, 300%, 400%, never 250%).
The second rule matters as much as the first. Scale a 16-pixel-wide sprite to 40 pixels (2.5x) with nearest neighbor and the result is technically sharp, but half the original pixels become 2 screen pixels wide and half become 3. Lines wobble and circles look lumpy. Scale it to 48 pixels (3x) and every pixel becomes an identical 3×3 block.
Here is where the setting lives in common apps:
| App | Where to resize | Setting to choose |
|---|---|---|
| Photoshop | Image > Image Size | Resample: Nearest Neighbor (hard edges) |
| Krita | Image > Scale Image to New Size | Filter: Nearest Neighbour |
| GIMP | Image > Scale Image | Interpolation: None |
| Procreate | Transform tool | Interpolation: Nearest Neighbor |
| Aseprite | Sprite > Sprite Size, or the export resize option | Method: Nearest neighbor |
How to make pixel art in Photoshop without blur
Photoshop has three separate traps. First, draw with the Pencil tool, not the Brush tool, because the Pencil paints hard-edged pixels with no soft falloff. Second, untick Anti-alias on the Magic Wand, Lasso and Marquee options, or every fill and selection edge picks up half-transparent pixels. Third, set Edit > Preferences > General > Image Interpolation to Nearest Neighbor, so Free Transform and rotations stop smoothing too. Image Size has its own resample dropdown, so pick Nearest Neighbor there as well.
How to make pixel art in Procreate without blur
Use a hard, non-textured brush at 1-pixel size on a small canvas, and when you move or scale a selection, switch the Transform tool’s interpolation to Nearest Neighbor before you drag. Procreate keeps that choice, but check it whenever a layer suddenly looks soft. When you export for sharing, export as PNG.
A worked example: picking a game resolution
The same whole-number rule applies to whole games. Say your art is drawn for a 320×180 base resolution. On a 1920×1080 monitor that is exactly 6x, so every art pixel becomes a crisp 6×6 block. On a 1366×768 laptop it is about 4.27x, which cannot be crisp. The clean answer is to render at 4x (1280×720) and fill the leftover space with black bars, rather than stretching to fill the screen. Base resolutions like 320×180 and 640×360 work well because they divide evenly into the most common 16:9 screens.

Is PNG or JPEG better for pixel art?
PNG, every time. PNG is lossless: each pixel keeps its exact color, so hard edges stay hard. JPEG is lossy and designed for photos. It splits the image into small blocks and discards detail the eye supposedly will not miss, which on pixel art shows up as smudges, color speckles and faint halos around outlines.
Practical export rules:
- Game assets: export PNG at native size (1x). Let the engine scale it with nearest-neighbor filtering. Shipping a pre-scaled 8x sprite wastes memory and makes collision maths awkward.
- Animations for sharing: GIF works because pixel art usually fits within its color limit. Lossless WebP is fine too.
- Posting online: upscale to a large whole-number size (for example 8x or 10x) with nearest neighbor before uploading. Social sites and chat apps often resize and recompress small images with smoothing, so a 64×64 upload can arrive blurry. A 640×640 upload survives much better.
A note on so-called “HD pixel art” upscalers: algorithms like hqx and xBR are filters built to enhance the look of hand-drawn 2D pixel art by guessing smooth curves between pixels. They are useful for emulators, but the result is a different style, not a sharper version of your art. If what you want is crisp, blocky pixels, nearest neighbor is the correct tool.





