Skip to content

Scheduled Follow-Ups and Review Requests: Automate Post-Delivery Client Care with Zapier

For Photographers ·

Tools:Zapier, ChatGPT
Time to build:1-2 hours
Difficulty:Advanced
Prerequisites:Comfortable building a basic Zap and comfortable with the idea of client data flowing between connected apps. See the Level 3 guide "Run the Studio on a Gallery and CRM Automation Platform".
ZapierChatGPT

What This Builds

A gallery delivery date stops being something you have to remember to follow up on. Ten days after delivery, a drafted review request is waiting for your approval. Months later, a seasonal rebooking nudge is waiting too. Neither goes out on its own, but neither depends on you remembering a date buried in last spring's calendar either. The studio's post-delivery client care runs on a schedule instead of on whatever you happen to remember that week.

Prerequisites

  • Professional plan or higher ($29.99/month), for the scheduled trigger and multi-step actions used here: Sign up
  • A connected ChatGPT or OpenAI account inside Zapier for drafting the follow-up emails ($20/month)
  • A tracking sheet or CRM (Google Sheets, Airtable, or a platform with its own Zapier integration) that records each client's gallery delivery date
  • Total ongoing cost for this build: $29.99/month plus $20/month, plus whatever your tracking sheet or CRM already costs you

The Concept

Picture a calendar that quietly checks itself every morning and asks "has anyone crossed the ten-day mark since delivery today." When someone has, it writes a draft email and puts it in front of you instead of sending it. You are not building a robot that emails your clients unsupervised. You are building a reminder system that also happens to write the first draft for you, so approving it takes thirty seconds instead of starting from a blank message.


Build It Step by Step

Part 1: Set Up the Delivery Date Tracker

  1. In your tracking sheet or CRM, make sure every booking has a row with the client's name, email, session type and the date their gallery was delivered.
  2. Add columns for "Review Request Sent" and "Rebooking Reminder Sent" so the automation, and you, can tell at a glance what has already gone out for that client.

Part 2: Build the Scheduled Search

  1. Create a new Zap with a Schedule by Zapier trigger set to run once a day, in the morning.
  2. Add a "Find Many Records" style action for your sheet or CRM, filtered to rows where the delivery date is exactly ten days before today, and "Review Request Sent" is blank. Cap the number of records this step returns (most sheet and CRM search actions have a results limit you can set) so a busy week never floods you with more drafts than you can review in one sitting.
  3. Add a Looping by Zapier action so the next steps run once per matching row instead of once for the whole batch. Inside Looping by Zapier's settings, turn on the option to continue past a single row's error rather than stopping the whole run, so one bad row never blocks the rest.

Part 3: Draft, Hold and Track

  1. Inside the loop, add a Formatter step that pulls the client's name and session type, but not the exact delivery date or venue, into the fields the next step will use.
  2. Add a ChatGPT action set to GPT-5.6 Sol, with an instruction to write a short, warm review request that thanks the client, links to your review page, and invites them to share the gallery. Feed it the stripped session details from step 6.
  3. Add a Gmail "Create Draft" action (never "Send Email") addressed to the client, using the AI-drafted body merged with their real name from the original row. The name is merged in by Zapier after the AI step, so the AI vendor never sees it, but Zapier reads the full tracker row (name, email, session type, delivery date) on every run and keeps it in its Zap History. Treat Zapier as one more place your client list lives.
  4. Add an action back in your sheet or CRM to mark "Review Request Sent" for that row, so tomorrow's run does not draft the same email twice.
  5. Duplicate this Zap for the rebooking reminder, changing the date filter to whatever interval fits your business (many photographers use a seasonal or annual mark) and pointing at the "Rebooking Reminder Sent" column instead.
  6. Test both Zaps by manually adding a test row dated ten days back with a personal email address, running the Zap once, and confirming a draft appears and the tracker column updates before you turn on the daily schedule for real.

Real Example: A Family Portrait Client

Setup: A portrait studio tracks every delivered gallery in a spreadsheet with a delivery date column, connected to a daily Zap as described above.

Input: A family's gallery was delivered on March 1. Ten days later, the scheduled search finds their row still marked "Review Request Sent: blank."

Output: A drafted review request addressed to the family, mentioning their fall mini-session by name, appears in Gmail Drafts that morning. The photographer reads it, sends it as written, and the tracker updates automatically. The following spring, a separate rebooking reminder drafts itself the same way.

Time saved: Writing a one-off thank-you and review request by hand typically runs about five minutes per client. Across a full client list that adds up, and it is the kind of task that gets skipped entirely once a busy month hits. A scheduled system turns "if I remember" into "it happens every time," with your only remaining job being a thirty-second read before you hit send.


What to Do When It Breaks

  • A draft goes out with the wrong name or session type → check whether the Looping step is pulling from the correct row index. A common cause is a filter step upstream returning rows in an unexpected order.
  • The same client gets two review request drafts → the "Review Request Sent" column update in step 9 likely failed or ran before the draft was confirmed created. Reorder the steps so the tracker only updates after the Gmail draft action succeeds.
  • Nothing drafts even though you know deliveries happened ten days ago → check the date filter in your Find Many Records step first. Date fields stored as text instead of an actual date type are the most common reason a filter silently matches nothing.
  • Silent failure: the daily schedule can keep "running" in Zapier's eyes while quietly finding zero matches every day because of a filter or authorization problem, so you will see no errors and no drafts. Glance at Zapier's Zap History every week or two, not just when something feels wrong, and confirm it actually found rows on at least one recent run.

Variations

  • Simpler version: Skip the AI drafting step entirely and use one fixed email template with merge fields for name and session type, if your review requests do not need to vary much.
  • Extended version: Add a branch that checks the client's session type and drafts a print-sale reminder instead of, or alongside, the review request for session types where print sales matter more.

What to Do Next

  • This week: Run the review request Zap on your most recent handful of deliveries and see how much editing the drafts actually need.
  • This month: Turn on the rebooking reminder Zap for one session type before rolling it out to your whole client list.
  • Advanced: Connect the delivery date trigger from this system to the gallery-to-blog-post automation, so a delivered gallery starts both the client follow-up sequence and a blog draft at the same time.

Advanced guide for photographer professionals. These techniques use more sophisticated AI features that may require paid subscriptions.