Guide

How to Track Photography Bookings and Deposits Without Losing Money

The inquiry-to-completed pipeline, why a deposit and a balance due need to be two different numbers, and the two specific spots where photography businesses quietly leak money on jobs they already booked.

Most photographers don't lose money on shoots they never got booked. They lose it on shoots they did — a final balance that never got chased once the gallery went out, a cancelled wedding still sitting in the numbers as booked revenue, a deposit and a total price that only ever lived in someone's memory of a phone call. None of that shows up as a single bad decision. It shows up eighteen months later as a bank balance that doesn't match how busy you've been. A booking log with the right columns catches all three, and it's simpler to set up than it sounds.

The pipeline: four statuses, not a calendar

A calendar tells you when a shoot is happening. It doesn't tell you whether it's still a maybe, a confirmed job, done and delivered, or fell through entirely — and those four states change what you should be doing about the money. Track every booking through four stages instead: Inquiry, Booked, Completed, Cancelled. A status dropdown, not free text, so the value is always exactly one of those four and every formula that reads it — your upcoming-shoots count, your booked revenue, your outstanding balances — works correctly without you having to normalize spelling later.

The habit that makes the whole system work is small: update status the moment it changes, not at the end of the month from memory. A client confirms — move it to Booked, right then. A wedding falls through — move it to Cancelled, right then. Everything downstream depends on that column staying current.

The columns that matter for every booking

One row per job, with these columns:

ColumnWhy it's there
DateThe shoot date — what "upcoming" is measured against.
Client NameWho booked it.
Shoot TypeA dropdown — Wedding, Engagement, Portrait, Family, Newborn, Event, Commercial, Other covers most photography businesses.
LocationWhere it's happening — useful for travel and scheduling, not just records.
PackageWhich package or offering the client bought.
Total PriceThe full agreed price for the job.
Deposit PaidWhat's already been collected.
Balance DueCalculated, not typed — see below.
StatusInquiry, Booked, Completed, or Cancelled.
NotesAnything else — a special request, a delivery deadline, a payment plan.

Deposits vs balance due — why they're two numbers, not one

A deposit and a balance due answer different questions. The deposit tells you what's already secured — money in hand, usually collected weeks or months before the shoot to lock in the booking. The balance due tells you what's still outstanding — what's left to collect, typically on or around the shoot date. Blend them into one "has this client paid" checkbox and you lose both pieces of information: you can't tell a fully-paid booking from one that's only a third covered.

The fix is a single formula: balance due equals total price minus deposit paid. Let the sheet calculate it rather than typing it in — type it manually and it's one edit away from being wrong the moment either number changes. Calculated, it updates itself the instant you adjust the total price or log an additional deposit payment, and it's never out of sync with the two numbers it's built from.

Where the money actually leaks

Two patterns account for most of it. First: a shoot gets marked Completed, the final gallery goes out, everyone's happy — and the remaining balance never gets chased, because nothing about "Completed" status flags that money is still owed. The job feels finished, so it stops getting attention, even though the balance-due column still shows a number greater than zero. Second: a booking gets cancelled and just sits there in the log looking like every other row, so it keeps getting counted in revenue totals it should never touch — you end up thinking you booked more than you actually did.

Both are fixed the same way: make "still owed" and "cancelled" visually impossible to miss. Conditional formatting that highlights any row where Balance Due is greater than zero catches the first pattern — a completed shoot with an unpaid balance stays visually flagged until someone collects the money and updates the deposit. Conditional formatting that highlights any row marked Cancelled catches the second — cancelled bookings stand out in red rather than blending into the rest of the log, so you never mistake one for revenue.

The dashboard numbers worth having

Once status and the balance-due formula are both live, a handful of numbers can pull themselves together automatically: total bookings (Booked plus Completed, cancellations excluded), upcoming shoots (Booked jobs with a date still ahead of today), revenue booked (total price across Booked and Completed jobs), and deposit outstanding — the sum of every unpaid balance across jobs you've actually booked or completed. That last one is the number worth checking every week; it's the gap between what you've earned and what's actually landed in your account, and it's exactly the number that stays invisible in a plain list of bookings.

A breakdown by shoot type and a breakdown by status round it out — which kind of shoot is actually filling your calendar, and how many jobs are sitting at each stage of the pipeline right now.

A five-minute weekly check

The columns and the formatting only pay off if you actually look at them. A short weekly pass keeps both leak points closed without turning into a chore:

  1. New inquiries (1 min): add any new inquiry as its own row the moment it comes in, even before it's confirmed — an Inquiry row costs nothing to have sitting there, and it's easier to update a row than to remember a conversation from two weeks ago.
  2. Status sweep (2 min): anything that got confirmed since your last check moves to Booked; anything that fell through moves to Cancelled. Don't let a stale Inquiry sit there once you know the real answer.
  3. Balance check (1 min): scan the highlighted rows — anything still showing a balance due that's tied to a shoot from more than a week or two ago is worth a follow-up message today, not next month.
  4. Upcoming glance (1 min): check what's coming up in the next week or two against the Location and Package columns, so nothing about an upcoming shoot catches you unprepared.

Five minutes, once a week, is enough as long as status gets updated the moment something changes rather than batched up. The formulas and the highlighting do the remembering; the weekly check is just you acting on what they're already flagging.

What this kind of log doesn't do

It's a record and a set of formulas, not a booking system. It won't take an online booking form from a client, sync to your calendar, process a card payment, or e-sign a contract — those are what dedicated booking platforms handle, and they're worth the cost once managing that manually becomes the actual bottleneck in your business. What a well-built log does is make sure nothing you've already booked slips through — no forgotten balance, no cancelled job hiding in your revenue numbers.

Once your bookings and balances are tracked cleanly, the next question is usually pricing — whether your packages actually cover your costs. The photography cost of doing business calculator works out the minimum you need to charge per session to cover your real expenses, and the photography package pricing calculator helps you build packages around that number instead of a guess.

Frequently asked questions

What's the pipeline from inquiry to completed shoot, and why does status matter?

Four stages cover almost any photography business: Inquiry, Booked, Completed, Cancelled. Every job moves through them in order, and the status column is what everything else in the log reads off — your count of upcoming shoots, your revenue-booked total, and your outstanding-balance total all depend on knowing which jobs are still live versus which fell through. Without a status column, a cancelled shoot and a completed one look identical in a plain list, and your totals quietly include work that never happened.

What's the difference between a deposit and a balance due?

The deposit is what a client pays to secure the booking, usually well before the shoot date. The balance due is what's left of the total price once that deposit is subtracted — the amount still owed, typically collected on or after the shoot. Tracking them as two separate numbers, with a formula that calculates the balance automatically (total price minus deposit paid), means you always know both what's already in hand and what's still outstanding for any given job, instead of one blended "have they paid" guess.

Where does money actually leak in a photography business?

Two spots, almost always. First, a shoot gets marked complete and the final balance never gets chased — the deliverables go out, the client's happy, and the remaining payment quietly falls through the cracks because nothing flagged it as still owed. Second, a booking gets cancelled and stays sitting in the log looking like normal business, so it gets counted in revenue totals it should never have touched. Both are fixed by the same habit: a balance-due column that's genuinely live, and a status you actually update the moment something changes.

What should a booking log record for every job?

Ten columns cover it: Date, Client Name, Shoot Type, Location, Package, Total Price, Deposit Paid, Balance Due (calculated, not typed), Status, and Notes. Shoot Type as a dropdown — Wedding, Engagement, Portrait, Family, Newborn, Event, Commercial, Other covers most photography businesses — lets you break your bookings down by category later without retyping anything.

How do I know which balances are still outstanding at a glance?

Conditional formatting on the Balance Due column, highlighting any row where the amount is greater than zero, turns "still owed" into something visual instead of something you calculate row by row. Add a second rule that highlights any row marked Cancelled, and a glance down the sheet tells you two things at once: what's still unpaid, and what shouldn't be counted as revenue at all.

Is a spreadsheet enough, or do I need booking software?

For the money side — what's booked, what's owed, what's actually been paid — a well-structured spreadsheet does the job completely and shows you totals a plain list never would. It doesn't handle online booking forms, calendar sync, contract e-signing, or payment processing; those are what dedicated booking platforms add, and they're worth paying for once coordinating that manually becomes the bottleneck. Plenty of working photographers run the money side on a spreadsheet indefinitely and only add software for the parts a spreadsheet was never meant to do.

Don't want to build the booking log and formulas yourself?

Everything above works in a blank sheet. The Photography Business Toolkit is the built version: a Client & Shoot Booking Tracker with 150 rows, 8 shoot types, an automatic balance-due formula, four status stages, and conditional formatting that highlights cancelled jobs and any row with money still owed — plus a Dashboard showing total bookings, upcoming shoots, revenue booked, and deposit outstanding. An income & expense tracker and a package pricing calculator come with it. Every shoot type and dropdown is editable. Works in Excel or Google Sheets.

One-time purchase. No subscription. It's a set of spreadsheets — not booking software, and not financial or legal advice.

Need a spreadsheet built around your exact packages instead? We build custom workbooks to order, delivered in 5 business days.