This free online tool upscales pixel art, sprites, icons and retro game graphics without the blur of a normal resize. Keep the big square pixels with nearest neighbor, round off the staircases of the diagonal lines with Scale2x, Scale3x or Eagle without adding a single new color, or get smooth, sharp edges with xBR, and download the result as a PNG image.
These pixel art scaling algorithms were created for emulators, to show the graphics of old consoles on big screens. Unlike the bilinear or bicubic resize of photo editors, they look at the neighbors of every pixel to find the edges of the drawing, so the outlines stay crisp. The transparency of sprites is kept, and pixel art that was already enlarged is detected and brought back to its real pixels before it is upscaled.
Everything runs directly in your browser. No image is uploaded to a server, and nothing needs to be installed.
| Field | Description | ||||||
|---|---|---|---|---|---|---|---|
| Algorithm | How the new pixels are created. See the comparison of the algorithms below. | ||||||
| Scale | How many times bigger the result is, in width and in height. A 32 × 32 sprite at 4× becomes 128 × 128 pixels. Scale2x, Scale3x and Eagle reach the bigger factors by running several times: 4× is Scale2x twice, 6× is Scale3x and then Scale2x, 9× is Scale3x twice. | ||||||
| Blend colors | Only for xBR. When it is on, the pixels along the edges mix the two colors, for smooth, anti-aliased lines. When it is off, every new pixel takes one of the two colors, so the result has exactly the palette of the original, which is useful for games with a fixed palette or for editing the result as pixel art. | ||||||
| Edges | What the algorithm sees past the borders of the image, where the pixels have no neighbors.
| ||||||
| Detect the pixel size | Pixel art is often shared already enlarged, with every pixel of the drawing repeated as a block of 2 × 2, 4 × 4 or more pixels. The algorithms only work on the real pixels, so the tool finds the size of the blocks, even when the image was cropped in the middle of a block, and reduces the image to one pixel per block before upscaling it. Images that are not made of blocks are used as they are. | ||||||
| Pixel size | When the detection is turned off, the size of the blocks to reduce, from 1 (the image as it is) to 64. Useful when the detection is confused, for example by a JPEG image, whose blocks are never exactly identical. | ||||||
| Background | The background of the preview: a checkerboard, to see the transparent areas, or a dark or light color, to see how the sprite looks in a game. It does not change the downloaded image. |
| Algorithm | Scales | New colors | Description |
|---|---|---|---|
| Nearest neighbor | 1× to 16× | No | Every pixel becomes a square block of the same color. The result looks exactly like the original, only bigger, with the staircases of the diagonals enlarged too. The best choice to upload sprites to stores and social media, or to use them in game engines that blur small images. |
| Scale2x / Scale3x | 2×, 3×, 4×, 6×, 8×, 9× | No | Also known as EPX and AdvMAME2x/3x. When two neighbors of a pixel that touch the same corner have the same color, that corner takes their color. The staircases of the diagonals become smooth, continuous lines, and the result has exactly the colors of the original. |
| Eagle | 2×, 4×, 8× | No | One of the first pixel art scalers. A corner takes the color of the diagonal neighbor when its two neighbors next to that corner have that color too. It fills the corners of diagonals and makes lines bolder, but can add small bumps to some shapes. |
| xBR | 2× to 6× | Yes, unless "Blend colors" is off | The "scale by rules" algorithm of Hyllian, the most advanced of the four. It compares the colors along the two diagonals of every corner to find the real edges of the drawing, and redraws them as smooth lines at 45°, or at shallower and steeper angles, with anti-aliasing. Curves and round shapes look as if they were drawn at the bigger size. |
When a photo editor enlarges an image, it uses bilinear or bicubic interpolation: every new pixel is a weighted average of the pixels around it. That works well for photos, but pixel art becomes a blurry mess, because its sharp edges between two colors turn into soft gradients. Turning the smoothing off gives nearest neighbor instead, which keeps the edges sharp but also enlarges every step of the jagged diagonals.
Pixel art scaling algorithms are a third way: they are designed for drawings with few colors and hard edges. They look at the pattern formed by each pixel and its neighbors, decide where the edges of the drawing are, and fill the new pixels so that the edges follow the shape instead of the grid. Scale2x does it with a few simple rules, and xBR with weighted color distances, which handle anti-aliased art and gradients better.
For best results, upscale the pixel art at its real size, with one pixel of the image for each pixel of the drawing, and in a format without compression artifacts, such as PNG or GIF. To resize to a size that is not a multiple of the original, upscale it here first, and then use the Resize Image tool.
Yes, this tool is 100% free and works directly in your browser, with no installation and no sign-up required. There is no watermark on the result.
Are my images uploaded to a server?No. The upscaling is calculated by your own browser and the image never leaves your computer.
Which algorithm should I choose?For the smoothest result, choose xBR. To keep the exact palette of the sprite, choose Scale2x (or xBR with "Blend colors" turned off). To keep the look of the original, with visible square pixels, choose nearest neighbor.
Why does the result look like the original, only bigger?Probably because the image was already enlarged, and the detection of the pixel size is turned off or could not find the blocks. This happens with JPEG images, whose compression slightly changes the colors of every block, and with images that were enlarged with smoothing. Turn off "Detect the pixel size" and type the size of the blocks yourself, or start from the original, small PNG file.
Is the transparency of my sprite preserved?Yes. The result is a PNG image, and the transparent areas stay transparent. With xBR, the edges between the sprite and the transparent background become partly transparent, so the sprite has smooth edges over any background.
Can I upscale a tileset or a seamless texture?Yes. Choose "Wrap around" in "Edges" so that a seamless tile stays seamless. For a tileset with many tiles in one image, keep "Extend": the pixels of neighboring tiles can slightly change the edges of each tile, so check the borders of the tiles in the result.
Can I upscale photos with this tool?These algorithms are made for pixel art, with few colors and sharp edges. On photos, most pixels have slightly different colors, so Scale2x and Eagle change almost nothing, and xBR gives a mild painting effect. To enlarge a photo, use the Resize Image tool.
What about hq2x, hq4x, Super Eagle and 2xSaI?They are other algorithms of the same family. hqx gives results similar to xBR, which was created later and draws the diagonals and curves more accurately. Super Eagle and 2xSaI are improved versions of Eagle, which blend colors like xBR.
How big can the result be?Up to 40 million pixels, for example about 6300 × 6300. Bigger images use too much memory for most browsers. Results of more than 4 million pixels take a moment to calculate.