FS-DOC-03Operations
Process Runbook / SOP
Lost Lead Re-engagement
[YourCompany.com] · Sales Department · Prepared by FullSpec · [Today's Date]
This runbook is your operating guide for the Lost Lead Re-engagement automation. It explains exactly what the system does on its own each day, what your sales team needs to do in response, how to handle anything that goes wrong, and who to call when you need help. FullSpec builds, tests, and monitors every part of the automation. Your team's only active responsibility is responding to warm reply alerts in Slack and handling those conversations as live sales opportunities.
01Process overview
Every morning at 7:00 AM, the automation scans your HubSpot CRM for contacts whose last activity is 21 or more days old and who are not already marked as Closed Won or Closed Lost. For each matching lead, it pulls the full contact record, drafts a personalised re-engagement email using the lead's own history and deal notes, sends that email from the assigned rep's Gmail account, and logs everything back to HubSpot. If a reply arrives, a second agent reads it, scores the intent, and either pings the rep in Slack immediately for a warm response or quietly closes out unresponsive contacts at the end of the sequence. Your team goes from spending 4 to 6 hours a week on this task to under 30 minutes, responding only when a lead is genuinely interested.
Process name
Lost Lead Re-engagement
Trigger
A HubSpot contact's last activity date exceeds 21 days and its lifecycle stage is not Closed Won or Closed Lost. The scan runs automatically every day at 7:00 AM.
Final output
Cold leads receive a personalised multi-touch email sequence. Warm replies are routed to the assigned rep via Slack. Unresponsive leads are marked Closed Lost in HubSpot at sequence end.
Agents running
Lead Inactivity Monitor, Sequence Copywriter Agent, Reply Classifier and Router
Tools involved
HubSpot, Gmail, OpenAI, Slack, Google Sheets
Weekly volume
Approximately 40 to 80 cold leads reactivated per month (10 to 20 per week)
Human checkpoint
Reviewing and responding to warm reply Slack alerts. No other manual steps are required.
Process owner
[Your name] — responsible for reviewing Slack alerts, approving any template changes, and escalating issues to FullSpec support
Process Runbook / SOPPage 1 of 4
FS-DOC-03Operations
02Step-by-step: what happens and who acts
What you actually need to do: There is one human step in this entire process. When you receive a Slack alert saying a lead has replied with interest, open the HubSpot link in that alert and respond to the lead directly. Everything else, scanning, drafting, sending, logging, scoring, and closing, runs automatically without any action from your team.
Step
What happens
Who acts
Type
1
At 7:00 AM each day, the Lead Inactivity Monitor scans all HubSpot contacts. It finds every contact where the last activity date is 21 or more days ago and the lifecycle stage is not Closed Won or Closed Lost. Each matching lead is queued as a separate workflow run and logged to the Google Sheets audit trail.
Automation
Automated
2
For each queued lead, the system fetches the full contact record from HubSpot, including the last interaction notes, deal stage history, and any linked company information. This context is passed directly to the email drafting agent so the message can reference the real conversation history.
Automation
Automated
3
The Sequence Copywriter Agent uses the contact's history and the current touch number in the sequence to generate a personalised re-engagement email via OpenAI. Touch one, two, and three each use a different angle and length so the messages do not read as copies of each other.
Automation
Automated
4
The drafted email is sent from the assigned sales rep's Gmail account at an optimised send time. The subject line and body reference the specific previous conversation to avoid a generic or templated feel. Daily send caps are respected to protect deliverability.
Automation
Automated
5
The sent email is logged as an activity on the HubSpot contact record. The sequence step number is recorded in a custom CRM property and the next follow-up date is set automatically so the second or third touch fires at the right interval without any manual reminder.
Automation
Automated
6
When a reply lands in Gmail on a tracked re-engagement thread, the Reply Classifier and Router agent reads the message and scores the intent. Replies are classified as interested, neutral, unsubscribe, or out of office. Each classification triggers a different downstream action.
Automation
Automated
7
If the reply is scored as interested or warm, a Slack notification is sent immediately to the assigned rep. The alert includes the lead's name, a plain-English summary of what they said, and a direct link to their HubSpot contact record so the rep can pick up the conversation without hunting for context.
Automation
Automated
8
The assigned sales rep opens the Slack alert, clicks through to the HubSpot contact record, reads the reply in full, and responds directly. This is the only step that requires a human. The rep uses their own judgement to continue the conversation, book a call, or update the deal stage.
Sales Rep
Human
9
If the full three-touch sequence completes with no warm reply, the automation updates the contact's lifecycle stage to Closed Lost in HubSpot and ends the re-engagement sequence for that lead. The pipeline stays clean and no open deals are left in limbo. An unsubscribe reply at any point suppresses the sequence immediately.
Automation
Automated
Process Runbook / SOPPage 2 of 4
FS-DOC-03Operations
03Handling exceptions
Situation
What the system does
What you do
A lead's HubSpot record is missing key fields (no last activity date, no assigned rep, or no email address on file)
The Lead Inactivity Monitor skips that contact and logs it to the Google Sheets audit trail with a flag noting which field is missing. The lead is not queued for a sequence run.
Review the flagged entries in the Google Sheets log each Monday. Add the missing field directly in HubSpot and the contact will be picked up on the next daily scan.
A contact triggers the inactivity scan but is already partway through a re-engagement sequence from a previous run
The system checks the custom HubSpot property that records the current sequence step. If a sequence is already active for that contact, the daily scan skips it to avoid sending duplicate outreach.
No action needed. If you believe a lead has been incorrectly skipped, check the sequence step property on their HubSpot record and contact FullSpec support to investigate.
A reply is received but the AI scores it as neutral or ambiguous and cannot confidently classify it as warm or unsubscribe
The Reply Classifier and Router flags the reply as unresolved, logs it to the Google Sheets audit trail, and does not suppress the sequence or send a Slack alert. The sequence continues on its normal schedule.
Check the unresolved replies in the Google Sheets log at least twice a week. Read the reply yourself and either respond directly or mark the lead status in HubSpot to reflect your decision.
A warm reply Slack alert is sent but the assigned rep does not respond within 48 hours
The system does not automatically follow up on behalf of the rep once a warm reply has been received. The sequence is paused for that lead to avoid sending further automated emails while a human conversation may be in progress.
If a rep is away or unavailable, reassign the HubSpot contact to another rep and forward the Slack alert to them. If the lead goes unanswered for more than 48 hours, contact the lead directly from your email to keep the relationship warm.
Gmail is temporarily unavailable or the email fails to send due to a sending limit or authentication issue
The automation retries the send up to three times over a six-hour window. If all retries fail, the failure is logged in the Google Sheets audit trail and the workflow pauses for that lead. No email is sent and no false activity is logged in HubSpot.
Check the Google Sheets error log if you notice a drop in outreach volume. If Gmail authentication has expired, contact FullSpec support at support@gofullspec.com to reconnect the OAuth credentials. In the meantime, send the queued emails manually from Gmail using the contact list in the audit log.
HubSpot API access is interrupted or rate-limited, preventing the daily scan or CRM updates from completing
The orchestration layer catches the API error and logs it. The daily scan for that run is aborted and will retry in full at the next scheduled 7:00 AM run. No partial data is written to HubSpot during a failed run.
If the interruption persists across more than one daily run, contact FullSpec support. Do not manually update HubSpot sequence properties during an outage as this may cause conflicts when the system resumes.
04Who to contact and when
Fill in the rows below once your team is confirmed. The FullSpec rows are fixed and do not need to change. Use this table as the first reference any time you are unsure who handles a particular issue.
Role
Name
How to reach them
Process owner (day-to-day oversight, template approvals, Slack alert responses)
[Your name]
[Your email or Slack handle]
Sales Manager (escalation for missed warm replies, rep reassignment, sequence pauses)
[Your name]
[Rep email]
Senior Sales Rep (brand tone review, AI email approval, spot-checks)
[Your name]
[Rep email]
FullSpec builder (build changes, agent modifications, credential updates, new sequence logic)
FullSpec
support@gofullspec.com
FullSpec support (errors, outages, failed sends, OAuth reconnection, Google Sheets log issues)
FullSpec
support@gofullspec.com
Contact FullSpec support at support@gofullspec.com as your first point of call for any technical issue, including Gmail authentication failures, HubSpot API interruptions, AI output quality concerns, or unexpected changes in sequence behaviour. Do not attempt to edit the automation platform workflow directly.
Process Runbook / SOPPage 3 of 4
FS-DOC-03Operations
05Ongoing maintenance
Whenever a new sales rep joins or an existing rep leaves
Update the rep's Gmail OAuth connection and HubSpot lead assignment so outreach continues to send from the correct account and warm reply alerts route to the right person in Slack. Notify FullSpec support to update the credential and routing configuration.
Process owner notifies FullSpec support
Whenever the re-engagement email templates need updating (tone, offer, or messaging change)
Draft the revised copy and share it with FullSpec support. FullSpec will update the OpenAI prompt templates and run a test batch before the new messaging goes live. Do not edit prompt text directly in the automation platform.
Process owner drafts; FullSpec implements and tests
Monthly spot-check (first Monday of each month)
Open the Google Sheets audit log and review 10 to 15 recent sequence runs. Confirm that emails sent match the expected sequence touches, that HubSpot records show the correct activity logs, and that Closed Lost updates are appearing as expected.
Process owner or Sales Manager
Weekly error log review (every Monday morning)
Check the Google Sheets audit trail for any flagged entries from the past seven days: missing field skips, failed sends, unresolved reply classifications, or API errors. Action any items that need a manual response before the next daily scan runs.
Process owner
Quarterly volume review
Compare the number of leads entering the sequence each month against the volume targets (40 to 80 per month). If volume has increased significantly, review the daily send caps and confirm that Gmail deliverability is healthy. Contact FullSpec if capacity adjustments are needed.
Sales Manager with FullSpec support if changes are required
Whenever HubSpot CRM properties or lifecycle stages are renamed or restructured
Notify FullSpec before making structural changes to HubSpot properties that the automation reads or writes, particularly the inactivity filter fields, sequence step property, and lifecycle stage values. Changes made without prior notice can break the daily scan.
Process owner notifies FullSpec before making changes in HubSpot
The single most common maintenance issue for this process is expired Gmail OAuth credentials. Gmail's OAuth tokens can lapse if the connected Google account's password changes, if the account has two-factor authentication updates, or after an extended period without a token refresh. When this happens, the system stops sending emails silently. Check the Google Sheets error log weekly and contact support@gofullspec.com immediately if you see a cluster of failed send entries.
Process Runbook / SOPPage 4 of 4