Quick Overview
This workflow runs every weekday morning to find HubSpot deals with stale proposal activity, pulls the associated contact email, enforces opt-out and follow-up limits using Google Sheets, sends a value-based follow-up via Gmail, updates the HubSpot deal stage, and notifies the sales team in Slack with error alerts.
How it works
- Runs on a weekday schedule at 9:00 AM.
- Pulls all HubSpot deals and filters to those with no activity in the last 3 days, extracting the associated contact ID and key deal fields.
- Fetches the associated HubSpot contact to get the prospect’s email and opt-out status, and skips contacts who are opted out or missing an email.
- Looks up the deal in a Google Sheets FollowUpLog to count prior “Follow-Up Email Sent” actions and stops processing if the deal has already reached 3 follow-ups.
- Alerts a Slack channel when the follow-up cap is reached so a salesperson can take manual action.
- Sends a follow-up email via Gmail using a high-value template for deals ≥ 5000 and a standard template otherwise, then updates the deal stage in HubSpot.
- Appends the follow-up action to Google Sheets and posts a Slack notification to the sales team, while sending a separate Slack alert if any step errors.
Setup
- Add HubSpot OAuth2 credentials and ensure deals have an associated contact with an email address.
- Add Google Sheets credentials, create a sheet/tab named “FollowUpLog” with columns like “Deal ID” and “Action”, and replace REPLACE_WITH_YOUR_SHEET_ID with your spreadsheet ID.
- Add Gmail credentials for the mailbox that sends the follow-up emails.
- Add Slack OAuth2 credentials and set the correct destination channels for the sales notifications, max-follow-up alerts, and error alerts.
- Update the HubSpot deal stage value (currently set to "decisionmakerboughtin") and the deal amount threshold (currently 5000) to match your pipeline rules.