Passport Photo Maker
Crop, adjust, and download print-ready passport, visa, and ID photos for 30+ countries — at the exact mm size and 300 DPI required by each government. 100% private; nothing leaves your browser.
Passport photo requirements by country
Reference table for every country supported. Sizes in millimetres; head-height as a percentage of total photo height. Always cross-check the linked official source before printing.
| Country | ID type | Size | Background | Head height | Source |
|---|---|---|---|---|---|
| 🇨🇦 Canada | Passport | 50×70 mm | Plain white or light | 44–51% | Official |
| 🇲🇽 Mexico | Passport | 35×45 mm | White | 70–80% | Official |
| 🇺🇸 United States | Passport | 51×51 mm | Plain white or off-white | 50–69% | Official |
| 🇺🇸 United States | Visa | 51×51 mm | White or off-white | 50–69% | Official |
| 🇫🇷 France | Passport | 35×45 mm | Light grey | 71–80% | Official |
| 🇩🇪 Germany | Passport | 35×45 mm | Light grey | 71–80% | Official |
| 🇮🇹 Italy | Passport | 35×40 mm | White or light grey | 80–90% | Official |
| 🇳🇱 Netherlands | Passport | 35×45 mm | Light grey | 71–80% | Official |
| 🇷🇺 Russia | Passport | 35×45 mm | White | 71–80% | Official |
| 🇪🇺 Schengen / EU | Schengen Visa | 35×45 mm | Plain white or light grey | 71–80% | Official |
| 🇪🇸 Spain | Passport | 32×26 mm | Plain light, uniform | 70–80% | Official |
| 🇹🇷 Turkey | Passport | 50×60 mm | White | 60–75% | Official |
| 🇬🇧 United Kingdom | Passport | 35×45 mm | Light grey or cream | 64–76% | Official |
| 🇧🇩 Bangladesh | Passport | 45×55 mm | White | 65–78% | Official |
| 🇨🇳 China | Visa | 33×48 mm | White | 58–69% | Official |
| 🇮🇳 India | Passport | 35×45 mm | White | 56–78% | Official |
| 🇮🇳 India | Visa (2x2 in) | 51×51 mm | White | 50–69% | Official |
| 🇯🇵 Japan | Passport | 35×45 mm | Plain white or off-white | 71–80% | Official |
| 🇲🇾 Malaysia | Passport | 35×50 mm | Blue or white | 65–78% | Official |
| 🇵🇰 Pakistan | Passport | 35×45 mm | White | 70–80% | Official |
| 🇵🇭 Philippines | Passport | 35×45 mm | White | 70–80% | Official |
| 🇸🇬 Singapore | Passport | 35×45 mm | Plain white | 69–80% | Official |
| 🇰🇷 South Korea | Passport | 35×45 mm | White | 56–78% | Official |
| 🇮🇱 Israel | Passport | 35×45 mm | White | 70–80% | Official |
| 🇸🇦 Saudi Arabia | Visa | 51×51 mm | White | 50–69% | Official |
| 🇦🇪 United Arab Emirates | Visa | 43×55 mm | White | 65–78% | Official |
| 🇳🇬 Nigeria | Passport | 35×45 mm | White | 70–80% | Official |
| 🇿🇦 South Africa | Passport | 35×45 mm | White | 70–80% | Official |
| 🇦🇺 Australia | Passport | 35×45 mm | Plain light, no patterns | 71–80% | Official |
| 🇳🇿 New Zealand | Passport | 35×45 mm | Light grey | 71–80% | Official |
| 🇦🇷 Argentina | Passport | 40×40 mm | White | 70–80% | Official |
| 🇧🇷 Brazil | Passport | 50×70 mm | White | 60–75% | Official |
What it does
Country specs straight from official sources
Each country entry stores size in mm and inches, the 300-DPI pixel dimensions, the required background colour, and the head-height percentage range — all linked back to the official government source for verification.
Crop guides that match the spec
The crop frame is locked to the chosen country's aspect ratio and overlaid with a head oval and eye line positioned at the official percentages. So when you align your face inside the guides, the head height and eye placement will be in spec.
Real 300 DPI in the file
Output JPG and PNG files have the JFIF density and PNG pHYs chunks set to 300 DPI, so when a print shop or operating system reports the resolution, it sees the right number — and prints at the exact mm size.
Background replacement that stays in the browser
On request, the tool lazy-loads a small ML model to remove the background of your photo, then composites you onto the country-required colour. The model and weights download once into your browser — your photo never leaves.
Print sheets with cut guides
Lay out your photo as a 4×6", 5×7", or A4 print sheet — the most common drugstore and home-printer sizes — with thin cut guides between photos. Export as PDF or high-res JPG. Print at 100% scale (no fit-to-page) to keep the mm size correct.
Multi-country ZIP for traveller scenarios
Going to one country, applying for a visa from another, renewing a passport from a third? Pick all three at once, and download a single ZIP with one correctly-sized photo per country.
How to use Passport Photo Maker
- 1Pick country and ID type
Use the searchable country picker — type the name, two-letter code, or even a flag emoji. Then choose passport, visa, or another ID type. Or pick "Custom size" to set any width × height with your own background colour.
- 2Add a photo
Drag-drop or click to upload a JPG, PNG, WebP, or HEIC (iPhone) photo, paste from clipboard, or use the "Take photo" button to capture one from your webcam with an oval alignment guide. Files up to 20 MB are accepted.
- 3Crop and frame
The crop is locked to the spec's aspect ratio. Pinch / scroll to zoom, drag to pan, rotate freely or in 90° steps. On Chromium browsers, click "Auto-center face" to snap the crop around the detected face at the spec's head-height percentage.
- 4Adjust and replace background
Tweak brightness, contrast, saturation, and sharpness if needed. If your background isn't the required colour, click "Replace background" — the tool downloads a one-time ML model and swaps the background for the country's colour without leaving the browser. Skip if your background is already correct.
- 5Review the compliance report
Auto-checks for head height, eye line, background uniformity, resolution, and face centering. Each one shows ✓ pass / ⚠ warn / ✕ fail with a short plain-language reason. Warnings don't block download — they're hints to help avoid rejection.
- 6Download what you need
Single photo as JPG or PNG with embedded 300 DPI metadata, a print sheet (4×6", 5×7", or A4) as PDF or JPG with cut guides, or a multi-country ZIP if you need photos for several different governments at once.
When to use this
You're renewing a US passport
Pick "United States → Passport" (51×51 mm / 2×2 inch / 600×600 px). Crop, run the compliance check, download a 4×6" sheet with 6 photos for $0.39 drugstore printing.
You're applying for a Schengen visa
Pick "Schengen / EU → Visa" (35×45 mm). The chin/crown oval is positioned to the 32–36 mm head-height range. Download a single JPG to upload to the visa portal.
You travel a lot and want photos for several visas at once
After cropping, click "Generate ZIP" and pick India 35×45, China 33×48, UK 35×45. Get a ZIP with three correctly-sized photos in one click.
You're an immigrant taking ID photos for the family
Use the webcam capture against a plain wall, run "Replace background" to make it the required colour for your destination country, then print a 4×6" sheet at home for each family member.
Common errors & fixes
- Compliance check says head is too small
- Zoom in and use "Auto-center face" — or drag the photo so the crown of your head sits near the top of the head-height oval. Most rejections come from the photo being cropped too wide.
- Background warning despite plain wall
- Shadows, off-white, or yellowing from indoor lighting often trigger this. Click "Replace background" to composite the cutout over the required colour, or retake against a wall facing a window in soft daylight.
- Output looks soft or pixellated
- Source photo is below 500 px on the short side. Take a fresh photo at a higher resolution; most modern phones output 4000 px+ at default settings.
- Print shop says the photo is the wrong size
- Print without "fit to page" or "auto-scale." Use 100% / actual size. The file already has the correct mm dimensions and 300 DPI metadata embedded.
- Auto-center face does nothing
- The browser FaceDetector API is only on Chromium-based browsers (Chrome, Edge, Brave). On Safari and Firefox, drag manually to center — the chin/crown oval shows you exactly where the face should land.
Technical details
| Output DPI | 300 (embedded in JFIF density / PNG pHYs) |
| Output formats | JPG (95% quality) and PNG |
| Print sheets | 4×6", 5×7", A4 — PDF and 300 DPI JPG |
| Max source file | 20 MB |
| Decoders | Native + dynamic heic2any for HEIC/HEIF |
| Face detection | Browser FaceDetector (Chromium) |
| Background removal | @imgly/background-removal — lazy-loaded |
| Privacy | No uploads, no telemetry on photo content |
Why 300 DPI matters more than file size
When a passport office prints (or laminates) your photo, they care about two things: the physical size of the paper and the dot density. Get either wrong and the photo gets rejected.
The pixel count alone doesn't tell a print shop how big to print the photo — that's what DPI metadata is for. A 600×600 px file at 72 DPI prints at 8.3 inches; the same file at 300 DPI prints at exactly 2 inches. Most online passport photo tools output the correct pixel count but leave the DPI flag blank, so the print shop guesses (often wrong).
This tool writes the JFIF density bytes for JPG and the pHYs chunk for PNG so any print software (or macOS Preview) reports 300 DPI and produces output at the exact mm size required by the country.
Head height and eye line — the silent rejection criteria
Most national passport rules don't care about your facial expression as much as they care about head height and eye position. Why? Automated face-recognition systems at borders need a consistent crop to match against the chip in the passport.
For example: the US requires the head to be 25–35 mm tall (chin to crown) inside a 51 mm frame. That's 49–69% of the photo height. Get the head too small and the face-recognition fails; too big and there isn't room for the chin and crown markers.
The overlay oval in this tool is placed at the midpoint of the official range for the chosen country. Center the head inside the oval and you're in spec. Eye-line placement works the same way — most countries require eyes at a specific percentage from the bottom edge.
Why we replaced the background in the browser
Background replacement used to mean uploading your photo to a paid web app. Today, the same models that power those services are small enough to run in a browser via WebAssembly — about 4 MB of code and 8–12 MB of weights, downloaded once and cached.
The trade-off is the first run downloads ~12 MB of weights. After that, every subsequent background removal happens entirely on your machine — no API calls, no waiting. We surface the size before the first download so you can decide whether to use it. If your photo already has the right background, skip it and the model is never downloaded.
Print sheets: why 4×6 inches is still king
If you're printing at a US drugstore (Walgreens, CVS, Costco), the cheapest and fastest option is the standard 4×6 inch glossy photo print — usually under $0.40. A 4×6 inch sheet fits exactly six 2×2 inch passport photos in a 3×2 grid, which is why this tool defaults to that layout.
For Schengen / EU 35×45 mm photos, the 4×6 inch sheet fits eight to ten photos, depending on margins. A4 is the European standard for home printing; we offer it as an option, but if you're heading to a print shop, 4×6 is faster and cheaper.
One tip: when printing, turn off any 'fit to page' or 'auto-scale' option. Print at exactly 100% scale. The mm dimensions and 300 DPI flag in the file are correct — don't let the printer driver second-guess them.
Frequently Asked Questions
Is the passport photo maker really free?
- Yes — every feature, including background replacement, multi-country ZIP, and print sheets, is free. There's no signup, no watermark, no paywall.
Does the tool upload my photo to a server?
- No. Every step — upload, crop, adjust, background removal, compliance check, and download — runs in your browser. You can verify this in the browser dev tools (Network tab): no outbound requests carry your photo bytes.
What DPI does the photo output?
- Every output is 300 DPI, with the DPI metadata embedded in the file (JFIF density for JPG, pHYs chunk for PNG). The pixel dimensions match the exact mm size required by the country at 300 DPI — for example 600×600 px for a US 2×2 inch passport photo.
Will my photo be accepted by the country's passport office?
- The dimensions, DPI, and aspect ratio match the country's official spec, and the compliance check verifies head height, eye line, background, and resolution. If all checks pass, your photo meets the technical requirements. Acceptance also depends on lighting, neutral expression, and other country-specific rules listed in the info panel — make sure those match too.
Can I print the photo at home?
- Yes. Download the 4×6", 5×7", or A4 print sheet PDF or JPG, and print at 100% scale (turn off "fit to page"). The cut guides between photos make trimming easier. For best results, use plain photo paper or 200+ gsm matte paper.
What if my photo fails one of the compliance checks?
- You can still download it. Failures and warnings are hints, not blockers. Re-crop, retake, or use the background-replace tool to fix the issue. If a single check fails, you're probably fine; if multiple fail, retake the photo.
How do I take a good selfie for a passport photo?
- Stand 1–2 metres from a plain light wall, facing a window in indirect daylight. Hold the camera at eye level (not below — that distorts the face). Keep your shoulders square, mouth closed, neutral expression. Avoid harsh shadows and direct overhead light.
Are glasses and jewellery allowed?
- Most countries (US, UK, Germany, Australia, etc.) ban glasses for passport photos. Light jewellery (earrings, small necklaces) is usually fine. Religious head coverings are generally allowed if your face is fully visible from chin to forehead. Always check the country-specific notes shown in the info panel.
Does the tool support HEIC photos from my iPhone?
- Yes. HEIC and HEIF files are decoded in-browser via a dynamically-loaded library — no need to convert beforehand.
Can I generate photos for multiple countries at once?
- Yes. After cropping and adjusting, click "Generate ZIP for multiple countries", pick up to 10 countries, and download one ZIP with a correctly-sized photo for each spec.
Related Tools
Image Resizer
Resize images to exact dimensions, percentage, or target file size — 40+ social media presets, bulk mode.
Image Compressor
Reduce file size without losing visual fidelity.
Image to PDF
Convert JPG, PNG, WebP, and other images to PDF — batch convert and combine in your browser.
Favicon Generator
Create favicons from images, text, or emoji. Outputs favicon.ico, apple-touch-icon, Android PWA icons, Web App Manifest, and HTML snippet — all in your browser. Free, no signup.
EXIF Viewer
View and remove EXIF metadata, GPS location, camera settings, and privacy data from photos — free, private, runs in your browser.