When someone inquires about booking, add them in this order — Contacts first, then Leads, then Events, then Bookings. The order matters because each table links to the one before it.
Sarah - June WeddingMitchell Wedding| Field | What to enter |
|---|---|
| Base price | Your full price before discount and tax |
| Discount | Dollar amount off (leave blank if none) |
| Tax rate | 5.3% — enter as 5.3 |
| Total price | Calculates automatically — do not edit |
| Deposit amount | What you're asking for as a deposit (usually 50%) |
| Add-ons | Select Prints and/or Guestbook if applicable |
| Internal notes | Anything the team needs to know |
Every payment — deposit or balance — gets its own record in the Payments table. Once linked to a booking, the balance due updates automatically.
The Stage field in Bookings tracks where every client is in your process. Keep it updated so your pipeline view and client hub always reflect reality.
| Stage | When to use it |
|---|---|
| New inquiry | First contact, no quote sent yet |
| Quote sent | You've sent them pricing |
| Deposit paid | Deposit received and confirmed |
| Contract signed | Contract returned and on file |
| Confirmed | Fully booked — deposit, contract, event details all set |
| Event complete | Event has happened |
| Balance collected | Final payment received |
| Follow-up sent | Post-event thank you and review request sent |
| Closed | Everything wrapped up — moves to Past in the hub |
The client hub at photobooth-hub.pages.dev (access code: K1ttr3dge!) shows a live summary of all your bookings pulled from Airtable. It's read-only — changes are made in Airtable, then Refresh updates the hub.
K1ttr3dge!| Stat | What it means |
|---|---|
| Upcoming bookings | Number of confirmed future events in the current filter |
| Total contracted | Sum of all Total price values in the current filter |
| Collected | Sum of all payments received (green) |
| Outstanding | Total balance still owed across all visible bookings (amber) |