Free color by number generator
Color by number generator that prints in black and white
Free and with nothing to sign up to: drop a picture and it becomes a grid of empty squares, each carrying the number of the pencil that fills it. Ten to 48 squares across and three to 12 numbers, held low on purpose — at 24 across, an A4 sheet gives every square 7.9 mm and the digit inside it 4.0 mm, which is the size a seven-year-old can work in. The key names each color in words worked out from its hue rather than printing a hex code at a child, every name is editable to match the tin you own, and none of it leaves the tab.
- 100% free
- No signup
- 10 to 48 squares
- 3 to 12 numbers
- Prints in black and white
Press Ctrl+V anywhere on the page to drop in a picture straight off a camera roll or a screenshot — no need to click the field first.
Printed across an A4 sheet with 10 mm margins each square comes out 7.9 mm wide and the number inside it 4.0 mm tall. Rows follow the shape of the picture.
Numbers run from 1 upwards, so past 9 a square has to hold two digits at the same size. Six is the number a small child keeps track of; the standard pack of twelve is the ceiling here.
How to make a worksheet a child can finish
How many squares you ask for sets the printed size of every digit that comes after it.
Pick the squares before you pick the pencils
The grid decides everything else about the sheet, so it goes first. Across an A4 page with 10 mm margins the 190 mm of usable width is divided by the count you choose: 19.0 mm a square at 10 across, 7.9 mm at 24, 4.0 mm at 48. The digit is drawn at half the square, so it shrinks with the grid, and the page warns you when it drops under 2.5 mm — the size at which a domestic printer and a school photocopier stop keeping 3 and 8 apart.
Rename the numbers after the pencils in the tin
The key arrives with each color described in words computed from its hue angle and lightness — light blue, dark brown, grayish green — because a palette taken out of a photograph has no manufacturer and therefore no name to quote. Those descriptions are editable fields. Type the name on the pencil your child will actually reach for, and the printed key, the CSV and the wording under the grid all follow. The names live only in the page, so they go when you reload.
Print the worksheet and keep the answer to yourself
Two separate downloads come out of this page for a reason. The worksheet is white squares, black rules and numbers, which is what goes to the table; the answer is the same grid filled in, which is what you check against afterwards or hand over when somebody gets stuck. Print at 100% rather than fit-to-page if the millimeter figures matter to you, and use the heavier rule that falls every ten squares to find your place instead of counting from the margin.
Technical specifications
| Squares on the sheet | 10 to 48 across, 24 by default; rows follow the proportions of the picture. Every square is the same size — there is no shape fitting here, and that is what makes the sheet countable |
|---|---|
| Size on paper | Across A4 with 10 mm margins the 190 mm of usable width divides by the count: 19.0 mm a square at 10 across, 7.9 mm at 24, 4.0 mm at 48. US Letter is 6 mm wider and gives a little more |
| Digit height | Half the square, so 4.0 mm at 24 across and 2.0 mm at 48. Under 2.5 mm a home printer and a photocopier start losing the difference between 3 and 8, and the page says so before you print rather than after |
| Numbers in use | 3 to 12, six by default. They run upwards in order of how much of the picture each covers, so number 1 is always the color with the most squares and 10 upwards costs a second digit |
| Where the color names come from | Computed from each color's Oklab hue angle, chroma and lightness — nine hue sectors plus brown, olive and six steps of gray — and every one is an editable field, because the name worth printing is the one on the pencil |
| Speckle count | Squares whose neighbors are all a different number are counted and reported. Those are the ones colored on their own, and a picture that will not read at this size has a lot of them |
| Page splitting | None, and none needed: 48 squares is the widest grid on offer and A4 holds it at 4.0 mm a square, so a worksheet is never cut across two sheets |
| The two sheets and the key | The worksheet as a black-and-white PNG, the filled answer as a second PNG, and the key as CSV carrying the number, the name you gave it, the hex and the square count |
Frequently asked questions
Why does my photograph look like nothing at 24 squares across?
Because 24 squares is roughly 600 pieces of information for the whole picture, and a photograph normally spends most of them on things that are not the subject. A face that fills the frame reads perfectly at that size; the same face in a group shot occupies eight squares across and there is no arrangement of six pencils that turns eight squares into a person. Crop hard before you come here, so the thing you want recognized is most of the frame. The panel gives you a second, more useful signal than squinting: it counts the squares with no neighbor of their own color, and a picture that will not read has a lot of them.
Can I make the colors match the pencils we already own?
You can rename every number, and that is usually the right move — but renaming does not change the color the square was matched to. The palette comes out of your picture, so a number described as sky blue is the actual average of that part of the photograph, and calling it Cornflower because that is what is in the tin is exactly what the field is for: the child needs to know which pencil, not which wavelength. If the palette is too far from your tin to be nameable, drop the number count. Three or four colors can be mapped onto any pencil case; ten cannot.
Some of the squares are completely empty. What goes in those?
Nothing, and they are empty on purpose. Those squares came from a part of the file that was transparent — a cut-out PNG, a logo, a sticker exported with its background removed — and rather than invent a color for them the page prints the square with no number in it, which reads on paper as leave this one. They are counted separately under the grid and excluded from every square count in the key, so the numbers you see against each color are what the child actually has to fill.
Why do the numbers stop at 12?
Because the twelve-pencil pack is the ceiling this format works at, not because more is hard to compute. Every number has to be legible inside a square that also has to be big enough for a child's hand, and at 10 and above a square carries two digits at the same height as one, so the effective print size halves exactly where the grid is already tightest. There is a second, less obvious reason: keeping track of which pencil is which is the actual task, and past about eight colors a young child spends the session cross-referencing the key rather than coloring. Six is the default for that reason.
Will it come out right on a black-and-white printer?
Yes — the worksheet has no color in it at all, by design. It is white squares, a 1-pixel dark rule between them, a heavier rule every ten and a black number in each cell, so a grayscale printer, a fax-quality photocopy and a laser printer with a tired cartridge all produce the same usable sheet. The color only exists in the key beside the grid and in the answer download. That is the opposite of the way most chart pages here work, where the color is the deliverable and the symbol is the fallback.
Does the heavier rule every ten squares mean anything?
It is a place-keeper, not part of the puzzle. Charts on this site all put a heavier line every ten cells so that a person working across a wide grid can say fourth square after the thick line rather than counting from the edge every time, and the same convention is used here because an adult reading the answer sheet back to a child needs to point at a square and be believed. It falls on the same tenth square in both the worksheet and the answer, so the two line up when you hold one over the other.
Are these the same colors the paint-by-numbers page would give me?
They come from the same code, so the same picture at the same color count gives the same colors on both pages — that shared quantizer is deliberate, and the reason neither page has its own. What differs is what happens after. That page asks for 6 to 36 colors and then merges away every region too small for a brush, so the same palette lands on a far finer grid; this one asks for 3 to 12 and keeps every square exactly where it fell. Ask both for eight colors from one photograph and the eight will match. Ask this one for six and that one for twenty and they cannot, because the cut is being made in a different number of places.
About worksheets, and why the number has to be bigger than the picture wants
A color-by-number sheet is not a low-resolution picture. It is a printed instruction, and the constraint that shapes it is the printed size of a digit rather than anything about the photograph. Half of a 7.9 mm square is roughly a 4 mm numeral, which survives a domestic inkjet, a laser printer and one generation of photocopying; the same sheet at 48 squares across puts a 2 mm numeral on the page, and 2 mm is where the counter of an 8 fills in and a 3 starts reading as an 8. That single number is why the grid here stops at 48 and why the color count stops at 12 — the moment a square has to carry two digits, the effective size of each one halves at exactly the setting where it was already tightest. Every generator that lets you ask for 200 squares and 30 colors is answering a question about the screen, not about the sheet of paper the answer gets printed on.
The second constraint is the key, and it is the one most tools ignore completely. A palette pulled out of a photograph has no manufacturer behind it, so there is no name to look up and nothing honest to print except the hex — which is useless to the person holding the pencils. What this page does instead is describe each color from its own geometry: the hue angle in Oklab picks the family, the chroma decides whether it is a color at all or one of six grays, and the lightness supplies the pale, light, dark or very dark in front of it — except on a saturated color, where it supplies nothing, because pure green sits at 0.87 lightness and calling it pale green misdescribes a vivid pencil. Two of the names are not hue sectors at all. Brown is a dark orange and olive is a dark yellow, and printing dark orange next to a square would send a child to the wrong pencil. Brown then needs a chroma bound as well as a dark one: the usual browns — saddle, sienna, chocolate, coffee, tan — sit between 44 and 76 degrees at a chroma of 0.03 to 0.12, while crimson, maroon and brick sit between 12 and 30 degrees at 0.12 to 0.18, so without that bound a dark saturated red is named brown. Every description is then an editable field, because a computed name is a starting point and the word on the tin is the truth.
The reason this exists beside the paint-by-numbers generator rather than inside it is that they solve opposite problems. That page fits shapes to the subject and then spends most of its effort destroying the small ones, because a brush cannot fill a sliver; here every cell is deliberately the same square, because a child working from a grid needs to be able to count along a row and find their place again after lunch. If what you actually want is closed outlines to color rather than a grid, turning a photo into a coloring page is the page for that, and if you want the grid without the colors — the squares over a reference photo so a picture can be copied by hand, square by square — that is the grid drawing tool. All three print, and all three are counted rather than eyeballed, which is the only thing they have in common.
Where the worksheet is put together
Your picture is opened by JavaScript running in the tab you are reading this in. It is never uploaded, never sent to a server and never stored anywhere — there is no upload step to undo, because there is no upload. Close the tab and nothing of it remains.
The names you type over the computed ones are held in the page and nowhere else — not in a cookie, not in local storage and not on any server. They survive changing the grid or the number count and they are gone the moment you reload, so print or export the key before you close the tab if the wording matters.