See llms.txt for all machine-readable content.
This workflow runs daily to read open quotes from Google Sheets, calculates how many days have passed since each quote was sent, and sends the appropriate 3-, 7-, or 14-day follow-up email via Gmail, then writes a sent date back to the sheet to prevent duplicates.
open, calculates days since sent_date, and selects the next due follow-up (day 3, 7, or 14) that has not been sent yet.quote_id) to stamp the corresponding followup_1, followup_2, or followup_3 column with today’s date.quote_id, customer_name, customer_email, quote_amount, sent_date, status, followup_1, followup_2, followup_3, using sent_date in YYYY-MM-DD format and status set to open/won/lost.Need the full quote-to-cash machine? The paid pack "Quote-to-Cash Follow-up Pro" ($19) adds what this free template deliberately leaves out: reply detection that stops the chase the moment a customer answers your latest follow-up, automatic invoice rows when you mark a quote won, and polite dunning counted from the due date - until the money lands. https://43sunsets.gumroad.com/l/quote-to-cash-followup-pro
✅ What's fixed in v1.1 (this version — verified by live tests)
The "sent" stamp is now written back to your sheet reliably. A dedicated stamp-builder node replaces the dynamic column key that n8n silently ignored, so a quote that was already followed up is never picked again the next day.
Follow-up timing is timezone-safe. On instances running west of UTC (the Americas), follow-ups no longer fire one day earlier than the configured offsets.
If you imported the previous version (v1.0), re-import this template to pick up both fixes.