A Mac app for volume sports photography

Every athlete.
Every image.
Every time.

Lineup ties each athlete's roster record, images, and template together from import to delivery — so an 800-kid job ships with zero crossed names, zero missing faces, and zero reprint apologies.

Runs on your Mac. Your originals are never modified. Nothing reaches a parent without your confirmation.

One job, five moments that matter

A job passes through a lot of small checkpoints. These are the five where something either goes right or goes wrong — NEW, ROSTER, RENAMED, QC, then DELIVERED. QC is a stop point held for the photographer's review, and nothing is delivered without their confirmation.

  1. 01 NEW 6,212 images in
  2. 02 ROSTER 847 athletes · parent-verified
  3. 03 RENAMED 6,212 files · 0 collisions
  4. 04 QC stop point — your eyes here
  5. 05 DELIVERED confirmed by you · then sent

The problem

Picture day doesn't break at the camera. It breaks at the desk.

  • "The roster shows up with 40 kids missing parent emails — and somehow it's your job to chase them down."
  • "The picture day schedule takes three evenings and four revisions, and the league POC answers the phone on none of them."
  • "The roster says 'Bryce.' His name is 'Brice.' Nobody catches it until the composite's already printed."
  • "It's 1 a.m., you're 400 renames deep, and you can no longer tell if IMG_4471 is a Tiger or a Wildcat."
  • "Your 'automation' is you, in front of Photoshop until 2 a.m., clicking Select Subject 400 more times."
  • "You're squinting at a five-year-old game photo trying to remember if the Eagles' blue was more navy or more royal."
  • "It's delivery week, and your inbox is already six 'can you resend my access code' emails deep."
  • "A parent forwards you a screenshot — she can see the whole team's shared folder, not just her own kid's."
  • "Your 'system' is six spreadsheets, two folder trees, and a prayer."

Every one of these is an identity problem, a chasing-the-league problem, or a production-grind problem. Lineup fixes all three.

How it works

From raw roster to delivered order — the league does its part through a link, and you stop only where your eyes matter.

  1. Import the roster — and heal it without a single phone call.

    Lineup cleans league exports into one master record and flags every gap: kids with no parent email, missing contact info, broken rows. One click sends your league contact a fill-in-the-blanks page listing only what's missing. Their answers flow straight back into the roster. You never retype a row and you never pick up the phone.

  2. Build the picture day schedule from the real roster — and let the POC review it on the page.

    Lineup generates the schedule from actual per-team athlete counts — your stations, your pacing, breaks where you want them. Send it to the league POC as a review link: change requests come back as structured requests on the page (not a voicemail), Lineup flags the conflicts, and you regenerate with their requests honored and your pinned slots untouched. Makeup day included. League already built its own? Drop in the picture they sent — Lineup reads it right on your Mac and matches it to your teams for you to check. Either way, one email then tells every family their own: your team shoots at 9:40, at the far dugout.

  3. Verify with parents before the shoot.

    Parents confirm names and spellings through your own branded portal — spelling problems die before picture day, not after the composites print. Lineup also checks every parent email as the roster comes in, and proposes the fix for a gmial.com before it bounces — you tick the ones to apply.

  4. Extract, match, and rename — without babysitting Photoshop.

    Lineup drives your own Photoshop through the extractions (see the extraction engine, below), then lands every shot in a duplicate-safe filename tied to the right athlete — barcode, EXIF, or filename mapping — after checking the shoot order for the frame that carries the right barcode on the wrong kid. Originals stay untouched. One click builds the individual batches with auto-assigned template colors — and a team you've shot before already has its colors remembered for when you build that team's image.

  5. Review, then deliver — to parents and to your gallery.

    QC stop points, a dry run by default. Then prepaid parents get their finished digital packages delivered directly, and your GotPhoto gallery gets the finished job uploaded straight from Lineup — only after you confirm. Print orders pick up from there, in the same job.

See the full workflow →

Production

The production night shift, handled.

Everything between the shoot and the smile — extraction, identity checks, team prep, parent delivery, gallery upload, print orders — runs from inside Lineup.

Photoshop, driven

Run extractions from inside Lineup — through your own Photoshop.

Lineup drives Photoshop's cloud-powered Select Subject plus Refine Hair across the whole batch, image by image, and can split the job across two Photoshop instances running side by side to cut the clock in half — you don't even have to have the second one open first; Lineup launches it, and quits it again when the run finishes, without ever touching a Photoshop session you already had open yourself. A stall watchdog catches Adobe's hangs so one stuck dialog doesn't eat the night. You come back to extracted athletes, not a queue.

Teams, ready for EZTB

Every team folder set up for you — and delivery won't ship without the finished image.

Today you build each team's composite in Pixnub EZTB, same as you always have. What's gone is the setup. Each team's folder holds the one pose you picked per athlete, with no stray default left beside it. Coaches are found by what they're wearing — not how tall they look — and once you confirm them, filed as staff the way EZTB reads them. Buddy and group shots you confirm go to your group template instead of an individual one. Templates are recolored once per color pair, and a design you mark as shared becomes one copy for the whole league instead of sixteen identical files. Then Lineup holds delivery — parent galleries and GotPhoto upload alike — until every confirmed team's finished image is in the job folder. Miss one and you find out before a parent asks, not after.

Paid orders, delivered

Prepaid digital packages, delivered straight to each parent — automatically, and privately.

Lineup matches paid orders to athletes, stages the run for your review, and on your confirmation actually sends it: each athlete's finished images upload to a cloud folder, and their parent gets an email with a download link to that folder — not a shared gallery, not an attachment. That link opens onto that child's images only; there is no folder, link, or gallery view that shows more than one athlete at a time, so one parent can never end up looking at another family's kid. It reads the payment status on your order export, so a cancelled or refunded order is held back, and an order that bought only a print doesn't get digitals. Logged per athlete so nobody is ever double-sent or skipped, and safe to stop mid-run without leaving anyone in a half-delivered state. Prepaid customers only. No gallery hunt, no "where are my photos" emails, no manually attaching files yourself.

Gallery, uploaded

Finished folder to GotPhoto gallery — no FTP client, no re-sorting.

Lineup builds the finished job in gallery-ready structure and uploads it straight to your GotPhoto gallery over built-in SFTP — in parallel streams, with per-file progress and per-file failure reporting, and a dropped connection hands its file to another stream instead of failing everything after it. The folder you QC'd is the folder that goes up, byte for byte.

Wrong kid, caught

A frame can carry the right barcode and the wrong child. Lineup reads the shoot order to catch it.

When the camera stamps one athlete's barcode onto another athlete's pose, every per-file check agrees with the mistake — the file says who it is. What gives it away is order: a volume shoot is one athlete, then the next, so one child's frames are one block. Before rename copies anything out, Lineup checks the shape of the day, flags the session that got split in two and the child who came away with no portrait at all, and tells you which splits are a mix-up and which are just a second sitting. Kids on the roster who never reached the camera get marked as no-shows — reversibly, for makeup day — instead of holding up the batch for everyone who did.

Print orders, tracked

After the gallery: every print order matched, sent to the lab, and shipped.

Print orders is the last stop on every job — Lineup Lab, built in. It reads the order export delivery already copied into the job, matches each order to that athlete's finished photographs, and applies your print rules — which product prints at what size, cropped to the right shape, with a resolution check after the crop. Orders group by where the box goes: banners to the league, memory mates home, or one order sent somewhere else when it's different. Mark them sent to the lab, then shipped with a tracking number, and each buyer is told at the address on their own order.

See it run on a real job →

Before the shoot

Before the shoot is a business, too.

The same app that runs picture day runs the part that gets you booked and paid for it.

  • Inquiries and dates — a league's booking inquiry lands in Lineup. Reply with the dates you actually have open, straight from your own availability calendar; they pick one, and nothing is booked until you confirm it, so two leagues asking for the same Saturday is something you see side by side, not a collision you find in October.

  • Clients — every league and organization as one record, with prospect, active or lapsed worked out from your real shoot history, and new jobs that fill themselves in from the client and the shoot date.

  • Contracts — written from your own templates, signed by the league on the portal, filed on the job.

  • Invoices — through Stripe, as a deposit and a balance, tax figured once, Stripe's fee passed through if you choose. Move picture day and the due date moves with it.

  • Crew — invite your shooters by email, see who accepted, and message all of them at once from Crew Chat.

  • The paperwork that expires — insurance certificates and other client documents nudge you 30 days out, 7 days out, and when they lapse.

  • A nudge at the right moment — roster late, picture day coming up, delivered and ready to wrap: the job tells you what it needs next, with the button right there. It never sends anything on its own.

Why Lineup

The league does its part through a link. You never chase.

What only Lineup does

Through the same league-facing portal — tokenized links, no accounts, nothing for the league to install

  • Roster gap-filling: the league contact fixes missing parent emails and contact info on a page that shows only the blanks — answers flow back into your master roster automatically

  • Schedule review: the POC requests changes on the schedule itself; requests come back structured and conflict-checked, not as a phone call you have to transcribe

  • Parent verification: parents confirm names and spellings before you shoot — not after you print

And it keeps paying off long after the league's part is done

  • Per-athlete identity thread through the entire job — roster row, images, template, order, delivery all tied together

  • Team colors remembered by league and team, season after season — confirm a team's primary and secondary once, and next year's job for that same team already has them ready. Same Wildcats blue in year six as year one, without you having to remember it.

  • Lost-access-code emails, one click — look the athlete up and the email is written for you with their real code and your gallery link, on screen to edit. Send when it reads right, through whatever email provider you already use.

  • Works with the platforms you already use: GotPhoto, PhotoDay, or fully manual

On shoot day itself — nothing forgotten, nobody turned away

  • Build a reusable equipment checklist once — lenses, barcode scanner, backdrop, sandbags, whatever's on your list — set it as your studio default, and Lineup emails you a reminder before every shoot so nothing gets left in the garage

  • A kid shows up who isn't on the roster — add them right in Lineup on the spot, barcode and all, without waiting on a coordinator to re-send a corrected roster

  • New — the Lineup Companion App: your roster, on your phone, for shoot day itself. Search by name, barcode, or jersey, fix a typo, register a walk-on with a barcode scan, or claim a spare card — no laptop required. Built offline-first: keep working with zero signal in the gym, and it syncs the moment you're back in range.

  • The same guardrails as the desktop app protect it: a field edit can never reach a job that's already moved into production, so a rushed sideline change can't corrupt a batch mid-run — a blocked one notifies the studio with the fix already queued up, never a silent drop. Check off your equipment list from the same phone, right there in the gym.

The safety guarantees

  • Your source files are never modified — every operation is a copy

  • Nothing is ever auto-deleted — archive, never destroy

  • Nothing sends to a parent or platform without your explicit confirmation — dry run is the default

  • Every parent delivery link opens onto one athlete's folder, and only that athlete's — no parent ever has a link that shows another family's child

  • Built by a working volume sports photographer, on real 400-athlete jobs — not by a SaaS team guessing at your workflow

How the app is built · Not fine print

Put it on your next job →

Jeremy Mohlke with his wife and daughters
My family. Who this has to be right for.

Founder note

Built by a working volume sports photographer, on real 400-athlete jobs — not by a SaaS team guessing at your workflow.

Lineup is the system I run my own jobs on, because I'm the one who answers to the league when a name goes out wrong.

Founder · Lineup

Get notified

Every athlete. Every image. Every time. Notify me at launch.

One email. When the doors open.

No purchase, no account, no payment information — just a launch notification.

Free to sign up. One email when the doors open. Unsubscribe any time.

Straight answers

"Why can't I sign up / buy it right now?"

Lineup is in its final stretch before general release. Sign up and you'll get one email the moment it opens — no spam, no repeated pitches.

"Will signing up cost me anything, or fill my inbox?"

No. Signing up is free and only gets you the one launch email. Unsubscribe any time.

"I already have a system."

Lineup outputs the CSVs and renamed files your existing pipeline already expects. It replaces the spreadsheets, not your workflow.

"Will the league actually use it?"

There's nothing for them to use. The POC and parents get a link — no account, no login, no app. They fill in a page and they're done.

"Is my data safe?"

Everything runs locally on your Mac. The coordinator and parent pages are optional — nothing goes across until you connect them yourself. Your images never leave your machine unless you send them: a delivery, a proof, a print order. Even a league's schedule picture is read on your Mac, not in the cloud.

"What if it messes up a job?"

It structurally can't destroy anything: originals untouched, no auto-delete, dry-run defaults.

"Does it work with GotPhoto / PhotoDay?"

Yes, both, plus a manual mode for everything else. GotPhoto customers also get direct gallery upload over SFTP — no third-party FTP client needed.

"Do I need special hardware for the two-instance extraction speedup, or to have both open ahead of time?"

No special hardware, and no pre-launching. It needs two Photoshop version installs (e.g. 2025 and 2026) on your Mac — the same Creative Cloud install most photographers already have. You don't have to open the second one yourself: Lineup launches it when a dual-instance job starts, and quits it again when the job's done. Single-instance extraction works fine with just one, and Lineup falls back to it automatically only if that launch doesn't come up within a short timeout.

"Is there a phone app too?"

Yes — the Lineup Companion App, free with Lineup. It's for shoot day only: pull up the roster, fix a name, or register a walk-on with a barcode scan, right there on the field, offline if you need to. Extraction, team tracking, and delivery still run through the desktop app back at your desk.

Get in touch

Send us a message

We read every message and reply from support@lineupcentral.com.