Contact Sheet Editor
A full-screen workspace for turning a folder of photos into a proof sheet you can print, send or file. Set the grid, the page size and the filename labels on the left; watch the sheet redraw on the right at any zoom from fit to 600%. Everything runs in your browser, so the photos never leave the machine they are on.
The studio is free, needs no account, and exports both the sheet itself and the selection record behind it — a PDF or image for the client, a filename list for your editor.
How the studio works
- 01
Drop a folder of photos
Drag files onto the page or use Add. JPEG, PNG, WebP, AVIF, GIF and BMP are accepted. Files are read by your browser — nothing is uploaded to a server.
- 02
Set the grid and the page
Columns and rows from 1×1 to 10×12, A4, US Letter, 16:9, square, 9:16 story, or a custom size in millimetres. Overflow flows onto numbered extra pages automatically.
- 03
Review while you lay out
Click a frame and press 1, 2 or 3 to mark it Kept, Flagged or Rejected. Filter pills at the top narrow the sheet to one status so you can print just the selects.
- 04
Export the sheet or the list
PDF and image exports render at twice the layout scale — 300 dpi for a paper size. Or export only the filenames as CSV, a Lightroom-ready comma string, or a JSON project manifest.
Every setting in the left panel
Nothing here is behind an upgrade. Each control redraws the sheet as you change it, and the numbers you set are the numbers the export uses — the page is laid out at 150 dpi and written at twice that.
Page
- · Page size: A4 (210 × 297 mm), US Letter, 16:9 screen, square 1:1, story 9:16, or custom
- · Custom size in millimetres, 40 mm to 1200 mm per edge, entered as short and long edge
- · Portrait or landscape, applied to every size including custom
- · Page border (margin) 0–96 px and gap between photos 0–60 px
- · Sheet background and text colour
Grid
- · Columns 1–10 and rows 1–12; the readout shows how many pages the batch needs
- · Fill order: across then down (how a proof sheet reads) or down then across (how a film strip is laid out)
- · Fit: whole photo letterboxed inside its cell, or crop to fill the cell
- · Keyline around each photo, 0–6 px, with its own colour
- · Rounded corners, 0–32 px, clipped so the photo itself is rounded rather than framed
- · Start from a template instead of dialling in numbers by hand
Labels
- · Label text: filename, frame number, or number + filename
- · Position: in a reserved strip under the photo, or printed on the photo over a scrim
- · Alignment for the under-photo strip: centred on the column or flush to its left edge
- · Hide the file extension, or print labels in capitals
- · Label size 6–28 px, scaled up with the export so print matches preview
- · A live sample shows exactly what a label will print as before you export
Bands and marks
- · Title band across the top of every page, with your own title text
- · “Page 2 of 5” band along the bottom
- · Keep / Flag / Reject badges drawn on the thumbnails, for a printed review copy
- · Photo order: manual drag, filename, file date, or file size — ascending or descending
Review without leaving the sheet
Marks live on the photos, not in a separate list. Kept, Flagged and Rejected each have a filter pill at the top of the studio, so you can lay out a 200-frame shoot, mark it down to twelve selects, then switch the sheet to Kept only and export that.
The marks are also what the CSV, TXT and JSON exports carry, which is what makes the sheet a selection record rather than a picture of one.
Keyboard shortcuts
- 1
- Mark the selected frame Kept and move to the next
- 2
- Mark Flagged and move on
- 3
- Mark Rejected and move on
- 0 or U
- Clear the mark on the selected frame
- ← → ↑ ↓
- Move the selection through the sheet
- Delete
- Remove the selected photo from the sheet
- ?
- Open and close the shortcut list
What each export writes
Six formats, split between the sheet and the list of what is on it.
- Every page in one document, rendered at twice the layout scale — 300 dpi at a paper size. The page format is taken from the sheet you laid out, so a square or 9:16 sheet stays square or 9:16 instead of being stretched to A4.
- PNG
- The page you are viewing, lossless, at twice the layout scale.
- JPEG
- The same raster, compressed, for email and messaging.
- CSV
- A filename table for the photos in the current filter — the selection record, not the picture.
- Lightroom TXT
- The same filenames as one comma-separated string, ready to paste into a Lightroom search field.
- JSON
- A project manifest: layout settings, order, and every review mark, so a sheet can be described without shipping the photos.
Contact sheet studio FAQ
What is the difference between this studio and the contact sheet maker on the homepage?
The layout engine, the settings and the exports are identical. The difference is room: the homepage tool is an island inside a marketing page, so an A4 sheet renders a few hundred pixels tall. This route gives the sheet the whole screen and adds zoom up to 600% with scrolling, so a single frame can be inspected at close to full size.
Do my photos get uploaded anywhere?
No. Files are read by the browser, decoded to canvas, and written back out as a download. There is no account, no upload step and no server-side copy of a photo, a thumbnail or a filename.
Can I print a contact sheet on a page size that is not A4 or Letter?
Yes. Choose Custom size and enter the short and long edge in millimetres, from 40 mm to 1200 mm. The PDF is written at those exact millimetre dimensions rather than being fitted into a standard paper size.
Are the original camera filenames kept?
Yes. Filenames are preserved and can be printed under each frame or over it, with the extension hidden and in capitals if you prefer. They are also what the CSV, TXT and JSON exports contain.
What happens when there are more photos than the grid holds?
The batch splits across as many pages as it needs, and the readout under the grid controls tells you the count before you export. The PDF export writes all of them; the PNG and JPEG exports write the page currently on screen.
Which file types can I add?
JPEG, PNG, WebP, AVIF, GIF and BMP. Camera raw files and HEIC from an iPhone are not supported yet — convert them to JPEG first.