DPI vs pixel size: what a 12×16 shirt print really needs
"Make it 300 DPI" is the most repeated and least understood advice in print-on-demand. The DPI number stored in your file means almost nothing on its own. What matters is how many pixels you have and how big you're printing them. Here's the math for the most common shirt print area, 12 × 16 inches.
The one formula you need
Effective DPI = pixel width ÷ print width in inches (and the same for height).
That's it. A file that is 3600 px wide, printed 12 inches wide, is 300 DPI. Print the same file 24 inches wide and it's 150 DPI. The pixels didn't change. They just got spread over more fabric.
12 × 16 in: pixel targets
| Effective DPI | Pixels needed (12 × 16 in) | What to expect |
|---|---|---|
| 300 | 3600 × 4800 px | Sharp. The standard target. |
| 200 | 2400 × 3200 px | Good on DTG for most art |
| 150 | 1800 × 2400 px | Printful's DTG minimum. Fine lines may soften. |
| 100 | 1200 × 1600 px | Visibly soft, jagged edges on text |
| 90 | 1080 × 1440 px | Typical Instagram-sized art. Will look blurry. |
For other sizes, multiply inches by 300. A 10 × 12 in youth front is 3000 × 3600 px. A 4 × 4 in left chest is 1200 × 1200 px.
Why the DPI field in your file is misleading
Image files have a DPI (technically PPI) tag. Photoshop, Canva and phones set it to 72, 96 or 300 more or less at random. You can change it from 72 to 300 without touching a single pixel, and the print won't look any different. A 1080 × 1080 image tagged "300 DPI" is still only 3.6 inches wide at true 300 DPI.
So when a printer says "300 DPI", they mean 300 pixels for every inch it will be printed. Check the pixel dimensions, divide by the print size, and you have the real number.
Your design rarely fills the full 12 × 16
The print area is the maximum. Your art usually covers part of it, and the part that matters is the art, not the canvas. If you have a 3600 × 4800 canvas with a small logo in the middle that's only 900 px wide, and you then scale the logo up to 12 inches, its effective DPI is 75. This is why tools that measure the content (the non-transparent pixels) give a more honest answer than file properties do.
The reverse is true too: a design that prints at 8 inches wide only needs 2400 px of width for 300 DPI.
Can you just upscale?
Regular resizing (bicubic, "preserve details") makes the file bigger and makes edges smoother, but it can't invent detail. It usually turns jagged into blurry. AI upscalers do better on illustrations and flat logos, and can be a reasonable fix for simple art at 2×. Look at the result at 100% zoom before you trust it: they sometimes warp text and fine linework.
The best fix is always to go back to the source:
- Vector art (AI, EPS, SVG, PDF): export again at 3600 px wide or more. Vectors scale with no quality loss.
- Canva: set the design size to 3600 × 4800 px (or 12 × 16 in) before designing, not after. Download at the largest size.
- Procreate / Photoshop: create the canvas at 12 × 16 in at 300 DPI from the start.
- Commissioned art: ask the artist for the original full-resolution or vector file.
Does 300 DPI really matter on a shirt?
Fabric absorbs ink and has texture, so the difference between 200 and 300 DPI is often hard to see on a DTG tee. Below about 150 it becomes obvious: stair-stepped curves, fuzzy text, mushy detail. Small text and thin lines suffer first. DTF and stickers show detail more clearly than DTG, so aim for a true 300 there.
Worked example
You have a 2000 × 2000 px logo and want it 12 in wide on a tee front. 2000 ÷ 12 = 167 DPI. It's above Printful's 150 minimum but soft for fine detail. Your options: print it at 10 in (200 DPI), or at 6.7 in for a true 300, or re-export from the source at 3600 px.