Inbound enquiries filed, answered, and chased without anyone tracking them
Client enquiries arrive by email, get read into the CRM, and receive a drafted reply. A second workflow watches what happens next and nudges anything that goes quiet.
- Trigger
- A new client enquiry arrives by email
- Run mode
- Automatic, with low-confidence replies held as drafts for a human
- Built with
- n8n · Gemini · HubSpot · Google Sheets · Gmail
- Connected to
- Gmail · HubSpot · Google Sheets
01 / Problem
What the manual version cost
Before the system existed, this all ran on someone's attention.
- 01
Enquiries arrive as ordinary email, so there's no structured record of them until someone makes one.
- 02
The same details get retyped into the CRM — contact, deal, follow-up task — three times over for one enquiry.
- 03
Replies get written from scratch each time, even though most enquiries fall into a handful of familiar shapes.
- 04
Once a reply is sent, nothing tracks whether the client ever came back, so quiet threads are only noticed by accident.
02 / Solution
What we built instead
Each decision below is a deliberate one — the interesting part is usually where the system refuses to guess.
- 01
A Gmail trigger picks up the enquiry directly. No forwarding rule and no separate intake form to maintain.
- 02
Gemini reads the email and extracts the details the CRM needs, which are merged with the raw message before anything is written.
- 03
The CRM side is built in one pass: contact upserted rather than duplicated, deal created, follow-up task attached.
- 04
A reply is drafted against the extracted details, then routed on confidence — clear enquiries send immediately, ambiguous ones are saved as a Gmail draft for a human to approve.
- 05
Every enquiry is logged to a tracking sheet either way, which is what the second workflow reads from.
- 06
A scheduled watcher re-checks open enquiries, searches the inbox for a client reply, and either closes the thread out or drafts and sends a nudge.
Enquiry to filed record and reply
Confidence decides whether the drafted reply sends itself or waits for approval.
- Trigger
Enquiry arrives
Gmail
- AI
Extract details
Gemini
- Action
Create contact, deal & task
HubSpot
- AI
Draft reply
Gemini
- Logic
Confident enough to send?
- yesAction
Send reply
Gmail
- noAction
Hold as draft
Gmail
Follow-up watcher
Runs on a schedule against the tracking sheet. Checks the inbox before it ever nudges anyone.
- Trigger
Every few minutes
Schedule
- Action
Load open enquiries
Google Sheets
- Action
Look for a reply
Gmail
- Logic
Client replied?
- yesAction
Close the thread
Google Sheets
- noAI
Draft nudge
Gemini
- Action
Send nudge
Gmail
03 / Result
What the system guarantees
Not projections. These hold because of how the system is built.
The CRM reflects every enquiry that arrived, not the ones someone had time to enter.
Contacts are upserted rather than appended, so repeat enquirers don't fragment into duplicate records.
A reply the system isn't confident about is never sent — it waits as a draft, so the failure mode is a delay rather than a wrong answer to a client.
Follow-up is driven by the tracking sheet rather than memory, so a thread going quiet triggers a nudge instead of being forgotten.
Replies stop when the client responds, because the watcher checks the inbox before it drafts anything.
Next case study
Supplier invoices read, checked, and filed without data entry
Document & order processing