🔓 Unlock all 10,000+ workflows & prompts free Join Newsletter →
✅ Full access unlocked — explore all 10,000 AI workflow and prompt templates Browse Templates →
Home n8n Workflow
January 22, 2026

LinkedIn + HubSpot, event follow-ups that convert

Lisa Granqvist Partner Workflow Automation Expert

You leave an event with a “great list.” Then Monday hits, inbox chaos starts, and follow-ups turn into guesswork and guilt. A few people get quick notes. Most get… nothing.

HubSpot follow-up automation fixes the part that quietly kills ROI: the lag between a real conversation and the next step. Marketing managers feel it when pipeline attribution gets messy. Sales leads get it when reps “circle back” two weeks late. And founders end up doing it themselves, badly.

This workflow turns event attendance plus engagement data into prioritized leads, personalized outreach, and clean HubSpot updates. You will see how it works, what you need, and where teams usually get stuck.

How This Automation Works

The full n8n workflow, from trigger to final output:

n8n Workflow Template: LinkedIn + HubSpot, event follow-ups that convert

The Problem: Event leads go cold before you act

Post-event follow-up looks simple until you actually do it. You have attendee exports, chat logs, Q&A participation, and a few half-written notes from a booth conversation. Then someone asks, “Who were the hottest leads?” and you end up relying on memory, which is honestly a terrible system. Meanwhile, your best prospects are getting messages from competitors the same day, because their process is faster (or just more disciplined). By the time you send a generic “great meeting you,” the moment is gone.

It adds up fast. The friction compounds across every tool you touch.

  • Copying attendee details into HubSpot takes about 5 minutes per person, and you still end up with missing job titles or company names.
  • Engagement signals live in different places (polls, chats, Q&A), so “priority” becomes a gut call instead of a repeatable score.
  • Personalization falls apart when you’re writing 30 messages in a row, which means more ghosting and fewer booked meetings.
  • When updates don’t make it back into HubSpot, teams double-contact people or forget entirely, and it shows.

The Solution: Score, personalize, and log follow-ups automatically

This n8n workflow kicks off the moment your event system calls a webhook with an event ID. It pulls the attendee list and the interaction logs (chat, Q&A, networking activity), then enriches each person with LinkedIn profile details like role and company. Next, GPT-4 reviews the combined context and helps evaluate engagement depth and relevance, so you’re not treating a casual attendee the same as someone who asked three buying questions. From there, leads are routed into priority paths, and the workflow drafts tailored outreach for the right channel. Finally, HubSpot gets updated, PostgreSQL stores the full record, and an analytics summary is generated so you can actually see what happened.

The workflow starts with an event webhook and turns scattered signals into one clean lead profile. AI routes high-priority contacts toward email follow-up and alerts your team in Slack, while medium-priority leads get a concise LinkedIn message. Every touchpoint is logged so HubSpot reflects reality instead of “we’ll update it later.”

What You Get: Automation vs. Results

Example: What This Looks Like

Say your webinar has 80 attendees and you want to follow up with the top 30. Manually, you might spend about 5 minutes per lead pulling LinkedIn details, skimming chat logs, and writing a decent note, which is roughly 2.5 hours (and that’s if you don’t get interrupted). With this workflow, the trigger is instant, enrichment and scoring run in the background, and you spend maybe 10 minutes reviewing the high-priority list before messages go out. You get most of that afternoon back.

What You’ll Need

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • HubSpot for CRM updates, notes, and tasks
  • LinkedIn API access to enrich profiles and send messages
  • OpenAI API key (GPT-4) (get it from your OpenAI dashboard)
  • Event platform API + webhook to send attendee and interaction data
  • SMTP or email provider to send follow-up emails
  • PostgreSQL database for logging lead history and analytics
  • Slack webhook URL (optional, for high-priority alerts)

Skill level: Intermediate. You’ll connect APIs, map fields, and validate data coming from your event platform.

Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).

How It Works

An event webhook starts everything. Your event system sends a POST request (with event ID and settings) to n8n as soon as the event ends, so the workflow runs while the attendee list is still relevant.

Attendees and interaction signals get pulled in. n8n fetches the participant list and grabs engagement data like chats, Q&A, polls, and networking activity. That raw data is merged into one profile per person, which is where the “who’s real” signals usually hide.

LinkedIn enrichment and AI scoring do the heavy lifting. The workflow calls LinkedIn to fill in role, company, and other context, then GPT-4 analyzes relevance and engagement to route people into high and medium priority follow-up paths.

Messages go out and HubSpot stays accurate. High-priority leads can get an email plus a Slack alert to your team, and medium-priority leads get a LinkedIn message. HubSpot is updated with follow-up status and notes, and PostgreSQL stores the full trail for reporting.

You can easily modify the priority thresholds to match your sales cycle based on your needs. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the Webhook Trigger

Set up the workflow entry point so external systems can send event data into n8n.

  1. Add and open Incoming Webhook Start.
  2. Set Path to networking-assistant.
  3. Set HTTP Method to POST.
  4. Set Response Mode to responseNode so Return Webhook Result responds to callers.

The incoming payload must include body.eventId and body.eventName because downstream nodes reference these fields.

Step 2: Connect Event and Profile Data Sources

Retrieve attendee, interaction, and LinkedIn profile data in parallel from the webhook payload.

  1. Open Retrieve Attendee List and set URL to =https://api.eventplatform.com/events/{{ $json.body.eventId }}/attendees.
  2. Open Fetch Interaction Logs and set URL to =https://api.eventplatform.com/events/{{ $json.body.eventId }}/interactions.
  3. Open Enrich LinkedIn Profiles and set URL to =https://api.linkedin.com/v2/people/{{ $json.linkedinId }}.
  4. Ensure Incoming Webhook Start outputs to Retrieve Attendee List, Fetch Interaction Logs, and Enrich LinkedIn Profiles in parallel.

⚠️ Common Pitfall: All three HTTP nodes use Authentication set to genericCredentialType but no credentials are configured. Add the required API credentials for the event platform, LinkedIn, and Slack/API services before running.

Step 3: Merge Data and Set Up AI Routing

Combine input data and route each attendee into the correct follow-up path using AI.

  1. Connect Retrieve Attendee List, Fetch Interaction Logs, and Enrich LinkedIn Profiles into Combine and Enhance Data.
  2. Connect Combine and Enhance Data to AI Routing Agent.
  3. Connect AI Profile Insight as the language model for AI Routing Agent.
  4. Credential Required: Connect your openAiApi credentials in AI Profile Insight.
  5. Confirm parallel routing: AI Routing Agent outputs to both Select High Priority and Select Medium Priority in parallel.

The filters rely on $json.followUpPriority produced by the AI routing step, so ensure your data combine logic supplies this field.

Step 4: Set Up the High-Priority Email Path

Generate and send personalized follow-up emails for high-priority attendees.

  1. In Select High Priority, confirm the filter condition uses ={{ $json.followUpPriority }} equals high.
  2. Connect Draft Follow-up Email as the language model for AI Email Agent.
  3. Credential Required: Connect your openAiApi credentials in Draft Follow-up Email.
  4. Open Dispatch Email and set Subject to =Great connecting at {{ $('Incoming Webhook Start').first().json.body.eventName }}!.
  5. Set To Email to [YOUR_EMAIL] and From Email to [YOUR_EMAIL].
  6. Credential Required: Connect your smtp credentials in Dispatch Email.

⚠️ Common Pitfall: Replace [YOUR_EMAIL] with real addresses or the SMTP send will fail.

Step 5: Set Up the Medium-Priority LinkedIn and Slack Path

Generate LinkedIn notes and alert your team for medium-priority attendees.

  1. In Select Medium Priority, confirm the filter condition uses ={{ $json.followUpPriority }} equals medium.
  2. Connect Draft LinkedIn Note as the language model for AI LinkedIn Agent.
  3. Credential Required: Connect your openAiApi credentials in Draft LinkedIn Note.
  4. In Dispatch LinkedIn Message, set URL to =https://api.linkedin.com/v2/messages and map body parameters: recipient to ={{ $json.linkedinId }}, message to ={{ $json.generatedLinkedInMsg }}.
  5. In Post Slack Alert, set URL to =https://slack.com/api/chat.postMessage and map body parameters: channel to ={{ $json.slackUserId }}, text to =Follow up with {{ $json.name }} from event!.
  6. Confirm parallel delivery: AI LinkedIn Agent outputs to both Dispatch LinkedIn Message and Post Slack Alert in parallel.

⚠️ Common Pitfall: The LinkedIn and Slack HTTP nodes require valid API credentials; add them to each node since they use genericCredentialType.

Step 6: Update CRM, Persist Data, and Return Results

Record outcomes in HubSpot and Postgres, then compile analytics for the webhook response.

  1. Open Update CRM Record and set Email to ={{ $json.email }}.
  2. Credential Required: Connect your hubspotApi credentials in Update CRM Record.
  3. Open Store in Database and set Table to networking_followups.
  4. Confirm column mappings in Store in Database, including event_id as ={{ $('Incoming Webhook Start').first().json.body.eventId }} and ai_insights as ={{ JSON.stringify($json.aiInsights) }}.
  5. Credential Required: Connect your postgres credentials in Store in Database.
  6. Connect Store in Database to Compile Analytics, then to Return Webhook Result.
  7. In Return Webhook Result, set Respond With to json and keep Response Body as ={{ { success: true, message: 'Networking assistant completed', analytics: $json } }}.

Step 7: Test and Activate Your Workflow

Validate that the parallel branches and AI actions produce the expected outputs before going live.

  1. Click Execute Workflow and send a test POST request to the Incoming Webhook Start URL with body.eventId, body.eventName, and attendee fields like linkedinId, email, and slackUserId.
  2. Confirm that Incoming Webhook Start fan-outs to Retrieve Attendee List, Fetch Interaction Logs, and Enrich LinkedIn Profiles in parallel.
  3. Verify that high-priority items pass Select High Priority and send via Dispatch Email, while medium-priority items pass Select Medium Priority and trigger Dispatch LinkedIn Message and Post Slack Alert.
  4. Check that Update CRM Record, Store in Database, Compile Analytics, and Return Webhook Result execute successfully and return a JSON response with success: true.
  5. When everything looks correct, switch the workflow to Active for production use.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Common Gotchas

  • HubSpot credentials can expire or need specific permissions. If things break, check your Private App scopes and the n8n HubSpot credential connection first.
  • If you’re using Wait nodes or external rendering, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses.
  • LinkedIn API access is finicky, and message endpoints often require extra approvals. If “Dispatch LinkedIn Message” starts failing, verify your LinkedIn Developer App permissions and OAuth token freshness.

Frequently Asked Questions

How long does it take to set up this HubSpot follow-up automation automation?

About 60 minutes if your API access is ready.

Do I need coding skills to automate HubSpot follow-up automation?

No coding required. You will mostly be connecting accounts and mapping fields from your event payload into HubSpot.

Is n8n free to use for this HubSpot follow-up automation workflow?

Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in OpenAI API costs (often a few dollars per event, depending on message volume) and any LinkedIn/API tooling costs you already pay.

Where can I host n8n to run this automation?

Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.

Can I customize this HubSpot follow-up automation workflow for approval before sending LinkedIn messages?

Yes, but you’ll want to add the approval gate right before “Dispatch LinkedIn Message.” A common setup is routing the drafted note into Slack for approval, then only continuing when a teammate clicks an approval link or replies with a keyword. You can also keep email fully automatic while making LinkedIn manual for compliance reasons.

Why is my LinkedIn connection failing in this workflow?

Usually it’s OAuth scope or token issues. Reconnect your LinkedIn credential in n8n, confirm your Developer App is approved for the endpoints you’re calling, and check the HTTP response body for “permission” or “rate limit” errors. If it worked once and then stopped, assume the token expired and refresh it. Also, LinkedIn is strict about automation patterns, so sending too many messages too quickly can trigger failures.

How many leads can this HubSpot follow-up automation automation handle?

Plenty for most event teams: dozens to hundreds of leads per event is typical.

Is this HubSpot follow-up automation automation better than using Zapier or Make?

Often, yes, because the branching, enrichment, and AI routing get complicated fast. n8n handles multi-path logic cleanly, and you can self-host if you don’t want to worry about task limits. You also get more control over data storage, like logging everything into PostgreSQL for analytics. Zapier or Make can still be fine if your flow is “add attendee to HubSpot, send one email,” but this workflow is doing a lot more than that. Talk to an automation expert if you’re not sure which fits.

Set it up once and your post-event follow-up stops depending on someone’s memory. The workflow handles the repetitive stuff so you can focus on real conversations and booked meetings.

Need Help Setting This Up?

Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.

Lisa Granqvist

Workflow Automation Expert

Expert in workflow automation and no-code tools.

×

Use template

Get instant access to this n8n workflow Json file

💬
Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Launch login modal Launch register modal