Pixel art basics — canvas size, palettes, outlines and shading

Pixel art is drawing one square at a time on a small grid. The limits are the fun: a 16 × 16 sprite has to say everything in 256 pixels. These basics will make your first sprites look clean and readable.

Key takeaways

  • Start small: a 16 × 16 sprite teaches more than a big canvas, and every pixel counts.
  • Pick a small palette first: an outline colour plus light, mid and dark shades of each main colour.
  • Single-pixel steps and gradual curves keep outlines clean; avoid L-shaped clumps.
  • Light from one direction, and avoid pillow shading and dithering on small sprites.
  • Scale by whole numbers with nearest-neighbour so every pixel stays a crisp square.
On this page
  1. Choose a canvas
  2. Build a small palette
  3. Outlines
  4. Shading with three tones
  5. Readability
  6. Exporting
  7. From pixels to crafts

Choose a canvas

CanvasGood for
8 × 8tiny icons, emoji-style faces
16 × 16classic game items and characters
32 × 32detailed characters, portraits
64 × 64 and upscenes and backgrounds

Start small. A 16 × 16 sprite can be finished in an evening, and every pixel matters, which teaches you more than a large canvas would.

Build a small palette

Choose a few colours before you start: an outline colour (a very dark colour, often not pure black), and for each main colour a light, mid and dark shade. A limited palette gives a sprite consistency and keeps it readable. Our own library shows how far a small palette goes:

How many colours do our sprites use?

Library pixel art by palette size

Show the numbers
Sprites
2–4 colours17 sprites
5–838 sprites
9–124 sprites
All 61 pixel art sprites in our library by number of colours. 59 of them (97%) use fewer than ten.Source: CraftPatterns pattern library, computed at build time

Outlines

A one-pixel dark outline separates the sprite from any background. Draw it first, as a silhouette. Then check two things:

  • No doubles: where a line steps diagonally, use single pixels at each step, not L-shaped clumps, which look jagged.
  • Smooth curves: step lengths should change gradually, 3-2-1 or 1-1-2-2-3, rather than jumping 1-4-1.

For softer sprites, colour the outline in a darker shade of the area it surrounds instead of black.

Shading with three tones

Pick a light direction, usually from the top left, and stick to it:

  1. Fill each area with its mid tone.
  2. Add the dark tone along the bottom and right edges, away from the light.
  3. Add one or two highlight pixels near the top left.

Avoid pillow shading, putting dark tones around every edge with light in the middle, which flattens the form. And avoid dithering on small sprites; it reads as noise.

Readability

  • Squint test: blur your eyes or zoom out to 1×. If you cannot tell what the sprite is, simplify the silhouette.
  • Contrast: important details such as eyes need strong contrast, even if that means exaggerating them.
  • Asymmetry: a perfectly mirrored sprite can look stiff; small changes add life.

Exporting

Pixel art must be scaled by whole numbers with nearest-neighbour resampling to stay crisp. Here is the difference, drawn by your own browser:

Potion bottle pixel art scaled up with nearest-neighbour: every pixel stays a crisp square.Nearest-neighbourEvery pixel stays a sharp square
Potion bottle pixel art scaled up with smooth scaling: the edges blur.Smooth scalingThe browser blends neighbouring pixels
The potion bottle pixel art from our library (16 × 16 pixels), scaled up by your own browser both ways. Smooth scaling suits photos; for pixel art it blurs every edge.
The PNG export in the pixel art editor offers 1×, 8× and 16×, does the scaling for you and keeps empty pixels transparent. Never resize pixel art by a non-integer amount like 150%; pixels end up different sizes.

From pixels to crafts

Because a sprite is already a grid, it can become almost any craft. The same sprite comes out very different sizes depending on what each cell becomes:

Craft16 × 16 cells32 × 32 cells64 × 64 cells
Cross stitch2.9 × 2.9 cm5.8 × 5.8 cm11.6 × 11.6 cm
Fuse beads8.0 × 8.0 cm16.0 × 16.0 cm32.0 × 32.0 cm
Alpha bracelet2.1 × 3.2 cm4.2 × 6.4 cm8.3 × 12.8 cm
C2C crochet40.0 × 40.0 cm80.0 × 80.0 cm160 × 160 cm
Knitting colourwork8.0 × 5.7 cm16.0 × 11.4 cm32.0 × 22.9 cm
Diamond painting4.0 × 4.0 cm8.0 × 8.0 cm16.0 × 16.0 cm
Needlepoint2.3 × 2.3 cm4.5 × 4.5 cm9.0 × 9.0 cm
Latch hook10.8 × 10.8 cm21.7 × 21.7 cm43.3 × 43.3 cm
Brick mosaic12.8 × 12.8 cm25.6 × 25.6 cm51.2 × 51.2 cm
Peyote & brick stitch2.1 × 2.6 cm4.2 × 5.1 cm8.3 × 10.2 cm
Pony beads9.6 × 14.4 cm19.2 × 28.8 cm38.4 × 57.6 cm

Finished sizes at each craft's default settings in our tools: 14-count for cross stitch, midi 5 mm fuse beads, 2.5 mm square drills, 25 mm C2C blocks, 20 × 28 knitting gauge and so on. Peyote, pony bead and alpha bracelet cells are not square, so the same grid comes out a different shape.

A 16 × 16 sprite makes a cross stitch motif under 3 cm across, a fuse bead coaster of 8 cm, or a C2C cushion 40 cm wide. Bigger sprites suit the small-cell crafts; small ones work beautifully as beads, bricks and blankets.

Every pixel art sprite is already a chart. Switch the craft in the editor to turn it into a fuse bead pattern, a cross stitch motif or a brick mosaic; the colours are matched to the nearest real beads, threads or pieces. The pixel art library has sprites to study and remix, and the pixel art maker converts a small image into pixels to start from.

Frequently asked questions

What size should my first sprite be?

16 × 16 or 32 × 32. Small canvases force you to simplify, which is the core skill of pixel art, and they are quick to finish.

How do I export pixel art without blurring?

Scale by whole numbers (2×, 4×, 8×) with nearest-neighbour resampling. Our PNG export does this for you.

How many colours should I use?

Four to eight colours is plenty for a single sprite: an outline colour plus two or three shades of each main colour.

Can I turn pixel art into a craft?

Yes. Pixel art maps directly onto cross stitch, fuse beads and other grid crafts. Switch the craft in the editor and each pixel becomes a stitch or bead.

Last updated · About us