AI Template Search
N8N Bazar

Find n8n Templates with AI Search

Search thousands of workflows using natural language. Find exactly what you need, instantly.

Start Searching Free
Oct 25, 2025

Automated HubSpot Follow-Up Workflow (n8n + Gmail)

Automated HubSpot Follow-Up Workflow with n8n and Gmail Picture this: you open your CRM, see a wall of contacts you meant to follow up with “last week,” and your soul quietly leaves your body. Rewriting the same “just checking in” email for the 47th time is nobody’s dream job. That is exactly where this n8n […]

Automated HubSpot Follow-Up Workflow (n8n + Gmail)

Automated HubSpot Follow-Up Workflow with n8n and Gmail

Picture this: you open your CRM, see a wall of contacts you meant to follow up with “last week,” and your soul quietly leaves your body. Rewriting the same “just checking in” email for the 47th time is nobody’s dream job.

That is exactly where this n8n + HubSpot + Gmail workflow comes in to save your sanity. It hunts down the right contacts to follow up with, checks their previous engagement, sends a personalized email, logs everything neatly in HubSpot, and even pings your team in Slack so everyone looks incredibly on top of things.

All of this runs automatically on a schedule, which means fewer awkward “Oops, I forgot to follow up” moments and more time for actual selling, building, or, you know, coffee.

What this n8n HubSpot follow-up workflow actually does

At a high level, this automated follow-up workflow:

  • Runs every day at 9 AM (or whenever you prefer)
  • Searches HubSpot for contacts who have been contacted before
  • Filters out anyone who was contacted in the last 30 days
  • Checks the contact’s engagements to make sure there was exactly one prior outreach
  • Builds a personalized follow-up email
  • Sends the email via Gmail
  • Logs the engagement back into HubSpot
  • Notifies your sales or growth channel in Slack

The result: consistent follow-ups, no double-pinging fresh leads, and a CRM that actually reflects reality.

Why automate follow-ups instead of suffering in silence?

Manual follow-ups sound simple until you have more than 10 leads. Then it becomes a full-time job you did not apply for. Automation helps you:

  • Stay consistent – Follow-ups go out at the same time every day, not “whenever you remember.”
  • Avoid duplicate outreach – No one likes getting three “just bumping this to the top of your inbox” emails in a week.
  • Keep HubSpot clean – Every outreach is logged, so your CRM stays accurate.
  • Customize logic – With n8n, you control the filters, timing, and message templates instead of being stuck with rigid defaults.

n8n sits in the middle, connecting HubSpot, Gmail, and Slack, and gives you a visual, flexible way to tweak the workflow anytime your process changes.

Step-by-step: how the workflow runs

Let’s walk through how this n8n workflow behaves once it is live. Think of it as your little robot assistant doing the boring parts in the background.

1. Schedule Trigger – your robot alarm clock

The workflow starts with the Schedule Trigger node. In the example, it is configured to run every day at 9 AM. You can adjust the schedule to match your timezone and team rhythm.

Once the time hits, the workflow wakes up and begins scanning your HubSpot contacts.

2. Search HubSpot Contacts – finding people worth nudging

Next up, an HubSpot node searches for contacts that have a known last-contacted date. You are specifically using the notes_last_contacted property so you know these people have already heard from you at least once.

Key configuration details:

  • Authentication: HubSpot OAuth2 (follow the n8n docs, and make sure your OAuth scopes are an exact match)
  • Sort By: notes_last_contacted
  • Direction: Ascending (oldest first, so the most neglected souls rise to the top)
  • Properties: Include at least firstname, lastname, email, and the last contact date

This gives you a list of contacts who have been contacted before and can be safely considered for a follow-up.

3. Filter Contacts by Last Contact Date – no spammy behavior

Now it is time to draw a line between “reasonable follow-up” and “borderline spam.” An IF node checks each contact’s notes_last_contacted value and compares it to the current date minus 30 days.

The logic is simple:

  • If the last contact date is more than 30 days ago, the contact moves forward in the workflow.
  • If it is more recent than that, they get filtered out and are not contacted again yet.

This protects both your reputation and your reply rates by not hammering people with too many emails.

4. Fetch Contact Engagements – checking the relationship status

Before you send anything, the workflow checks how much engagement there has been with that contact. Using HubSpot’s associations API, a node fetches the contact’s engagements so you can see prior activity.

This is where you decide what “follow-up worthy” means. In the sample template, the idea is to follow up only if there was exactly one prior outreach email. That way you are not hitting someone who is already in an active conversation or still in the “first contact” stage.

5. Filter Single Engagement – avoiding over-contacting

Another IF node then checks the number and type of engagements that came back from HubSpot. In this example workflow, the condition is:

results.length === 1

If that is true, the workflow continues. If not, the contact is skipped.

This logic:

  • Prevents sending a follow-up to a brand new contact with zero prior outreach
  • Avoids bombarding active leads who already have multiple ongoing engagements

In other words, it focuses your automation where it makes the most sense.

6. Compose Email Payload – writing the “just checking in” so you do not have to

Once a contact passes all the filters, n8n uses a Set or Function node to build the email payload. This is where personalization happens using HubSpot contact properties like firstname and any relevant context you have stored.

Example plaintext template:

Hey {{ $json.properties.firstname }},

Just want to follow up on my previous email since I haven’t heard back. Have you had a chance to consider n8n?

Cheers,
Your Name

You can tweak this message to match your tone, brand, or level of enthusiasm. The main point is that the template is dynamic and uses real contact data instead of sending the same “Dear Customer” email to everyone.

7. Send Outreach Email with Gmail – actually hitting send

With the payload ready, the workflow hands things off to the Gmail node to send the email. You define the subject, body (HTML or plaintext), and sender details here.

Recommended configuration:

  • Use a verified sender name and email address
  • Disable any appended attribution so your email looks clean and professional
  • Add rate limiting if you are sending to a large list, to keep your deliverability and API usage healthy

At this point, your follow-up email is out in the world, and you did not have to copy-paste anything.

8. Record Engagement in HubSpot – keeping your CRM honest

After sending the email, the workflow is not done yet. It uses the HubSpot engagement resource to create a new engagement record tied to that contact.

Typically you will include metadata like:

  • Subject
  • HTML or plaintext body
  • Recipient email
  • Associated contact ID

This updates the contact’s last contact date and ensures they will not show up again in your follow-up workflow until the timeframe you choose, which in this example is one month.

9. Slack Notification – letting the team know the robots are working

Finally, a Slack node posts a short message to your sales or growth channel. Something like:

Follow up email sent to: contact@example.com

This creates a lightweight audit trail, keeps everyone in the loop, and gives your team the pleasant illusion that you personally remembered every single follow-up.

Setup tips, OAuth fun, and common gotchas

OAuth Scopes – tiny settings, big headaches

Both HubSpot and Gmail use OAuth, which means you will need to configure credentials correctly in n8n. Pay close attention to the scopes:

  • Follow the n8n documentation exactly for both HubSpot and Gmail
  • Make sure the scopes you request match what the workflow needs

Missing scopes are a classic source of “why is this not working” errors when searching contacts or creating engagements, so double-check this part early.

Rate limits and deliverability – be kind to APIs and inboxes

When you start scaling this workflow, keep two things in mind:

  • API rate limits: HubSpot and Gmail both limit how many requests you can make in a given period. If you are processing big lists, consider throttling or queue logic in n8n.
  • Email deliverability: Personalize your messages, avoid spammy phrases, and keep an eye on bounce rates to protect your sender reputation.

Automation is powerful, but it should still feel human on the receiving end.

Testing strategy – do not unleash it on your entire database yet

  1. Start with a single staged contact in HubSpot and a personal or test Gmail account.
  2. Check that the engagement is created in HubSpot and that notes_last_contacted updates as expected.
  3. Verify your Slack notification arrives and the formatting looks good.

Once all that works, you can gradually open the floodgates.

Advanced enhancements to level up your automation

Once the basic follow-up flow is running smoothly, you can start adding extra logic and experiments.

  • Filter by engagement type: Skip follow-ups if there have been recent calls or meetings so you do not double up on communication.
  • A/B test subject lines: Branch the workflow so half of the contacts get subject A and half get subject B, then track opens and replies.
  • Unsubscribe logic: Check for a custom property like “Do not contact” before sending, and bail out if it is enabled.
  • Backoff strategy: If someone has repeatedly not replied, flag them for manual review instead of continuing automated follow-ups forever.

These tweaks help you keep the workflow effective, respectful, and aligned with your sales or customer success style.

Security and privacy considerations

Since this workflow touches contact data and email, treat it with care:

  • Store OAuth credentials in the n8n credentials manager and restrict access.
  • Make sure your outreach complies with regulations such as CAN-SPAM and GDPR.
  • Always include a clear way to opt out or unsubscribe in your emails.

Good automation respects both your leads and the law.

Pre-launch checklist before going to production

Before you let this workflow loose on your real contact list, run through this quick checklist:

  • HubSpot and Gmail OAuth credentials are configured and validated
  • Test contact created and verified in HubSpot
  • Rate limiting or throttling in place for larger runs
  • Personalization tokens like {{ $json.properties.firstname }} are working correctly
  • Slack channel is set up and receiving notifications

Once all of these are green, you are ready to automate follow-ups with confidence.

Conclusion & next steps

This n8n workflow gives you a practical, repeatable way to follow up with HubSpot contacts using Gmail, without relying on your memory or a sticky note system. It improves timing, keeps your CRM accurate, and creates a visible audit trail through HubSpot engagements and Slack notifications.

To get started:

  • Clone the workflow into your n8n instance
  • Configure and validate your OAuth scopes for HubSpot and Gmail
  • Test with a sample contact
  • Iterate on your subject lines and message copy until it fits your brand and audience

Call to action

If you would like a copy of this workflow or help tailoring it for your team, reach out to get a downloadable n8n workflow file, or subscribe for more automation recipes, n8n templates, and best practices.


Keywords: n8n, HubSpot follow-up workflow, Gmail outreach, automated follow-up, sales automation, HubSpot automation template, n8n workflow.

Leave a Reply

Your email address will not be published. Required fields are marked *

AI Workflow Builder
N8N Bazar

AI-Powered n8n Workflows

🔍 Search 1000s of Templates
✨ Generate with AI
🚀 Deploy Instantly
Try Free Now