n8n automation portfolio

Production Automations, Built on n8n

A working portfolio of 21 automation projects across sales, marketing, revenue operations and AI — from AI lead generation and cold-email engines to call intelligence, content pipelines, onboarding and verification. Every figure below is read live from the running n8n instances.

187 workflows · 2 instances
read live from the n8n API
instances online
187
Workflows built
61
Active right now
21
Automation projects
20
Systems integrated
4,309
Automated steps
StackSalesforceAnthropic ClaudeOpenAIGoogle GeminiOllamaZoomGongGoogle SheetsGoogle DriveGoogle CalendarSlackGmailAsanaSupabaseFirecrawlSkyvernElevenLabsSmartleadBlitzAPIRSS

Automation projects

What each one actually does, end to end
Trigger AI / LLM Salesforce HTTP / API Branch / logic Flow control Slack / Gmail / Zoom Code / transform
AI Lead Generation

Lead Sourcing & ICP Prospecting

7 live

Describe an ideal customer in plain English and get back a sheet of verified, enriched leads — hands-off.

ICP IntakeInit RunLog Run StartedAnthropic ModelICP → Blitz FiltersParse & CapBlitz Find PeopleFlatten & Cap LeadsEnrich LoopBlitz Email EnrichMerge Enriched RowWait 1s (rate limit)Keep Verified OnlyWrite Verified LeadsBuild Run SummarySend Final EmailLog Run CompleteDoneNotify ErrorError CompleteCreate Result SheetNeed Normalization?Anthropic NormalizeLLM Normalize FieldsMerge NormalizedSkip Normalize Pass
Live workflow mapICP prospecting engine · 26 nodes
How it runsStarts from an intake form; runs paginated at controlled rate limits
  1. 1A reviewer describes the ideal customer profile in a form
  2. 2Claude converts it into a structured prospect-search filter
  3. 3Pull matching people from the data provider, page by page
  4. 4Enrich and verify every email before keeping the row
  5. 5Write only verified leads to a sheet and send a summary

Combines Claude Opus, a self-hosted Ollama model and live email verification.

Anthropic ClaudeOllamaBlitzAPIGoogle Sheets
25 workflows
AI Website Intelligence

Account Enrichment

17 live

Turns every newly-assigned sales opportunity into a researched account brief — automatically, overnight.

Schedule TriggerWhen clicking 'Execut…Remote Run Trigger (w…Get Recent Open Oppor…Filter OpportunitiesPrepare Bulk Account …Bulk Get Accounts (SO…Triage: Stamp vs Enri…Log Triage SummarySave: Total OppsSave: Stamp CountSave: Enrich CountPrepare Stamp-Only Ba…Has Stamp Records?Call Stamp-Only Proce…Prepare Enrichment Ba…Call Batch Enrichment…Aggregate Enrichment …
Live workflow mapEnrichment dispatcher · prod · 18 nodes
How it runsRuns nightly on a schedule, plus on-demand via webhook
  1. 1Pull open CRM opportunities assigned in the last day
  2. 2Keep only accounts with a website but no insights yet
  3. 3Recursively crawl the company’s website (sitemap-aware)
  4. 4Gemini reads the pages and extracts business insights
  5. 5Write the insights straight back onto the CRM record

Batched — a router feeds the engine 20 accounts per run to cut cost and runtime.

SalesforceGoogle GeminiHTTP / RESTData Tables
27 workflows
CRM Narrative Briefs

Account History Summarizer

15 live

Reads everything the CRM knows about an account and writes the rep a clean, formatted narrative brief.

When Executed by Anot…Unpack Batch & Prepar…Fetch Opportunities (…Fetch Contacts (SOQL)Fetch Tasks (SOQL)Fetch Notes (SOQL)Fetch Quotes (SOQL)Prepare Quote Line It…Fetch Quote Line Item…Assemble Per-Account …Call Summary EngineBulk Update Accounts …Bulk Update Opportuni…Return Batch SummaryWait
Live workflow mapBatch summary router · 15 nodes
How it runsRuns on a schedule, plus on-demand via webhook
  1. 1Pull a batch of 50 accounts from the CRM
  2. 2Bulk-query 6 related record types (activities, opps, cases…)
  3. 3Gemini summarizes the full history into a narrative
  4. 4A second pass formats it as a clean HTML brief
  5. 5Write the summary and HTML back onto the account

Re-architected from ~30,000 down to ~600 workflow calls per month.

SalesforceGoogle GeminiHTTP / RESTData Tables
28 workflows
Post-Call Automation

Post-Call Automation (Zoom)

4 live

When a sales call ends, it finds the right deal, pulls the key moments, and drafts the rep’s follow-up.

Zoom WebhookMergePause WebhookFetch All Meeting Rec…Demo Occurred?IfCollect Key Meeting F…Isolate Target Record…Downloaded target mee…Download Target Trans…Get meetingGoogle Gemini Chat Mo…Structured Output Par…Google Gemini Chat Mo…Email Draft GeneratorInsert row2Call ' - Draft Gmail …Log Email & HotpointsIf topic and event [A…Google Gemini Chat Mo…Structured Output Par…Meeting Summarize & H…Format Demo Call Hotp…Merge2Update Opportunity Ho…Get Eligible RepsRep Gate CheckGet Rep UserGet Rep Open OppsResolve Opp (waterfal…Opp Matched?Slack · Manual Review
Live workflow mapCall ingest → next steps · 32 nodes
How it runsTriggered by a call-platform webhook the moment a call completes
  1. 1Call ends → the transcript is ingested
  2. 2Confirm the host is an active, eligible rep (rep gate)
  3. 3Match the call to the right opportunity (pipeline → Gemini fuzzy-match)
  4. 4Extract the key moments and next steps
  5. 5Patch the deal and draft a follow-up email as the rep

No confident match? It routes to Slack for manual review instead of writing.

ZoomSalesforceGoogle GeminiSlackGmail
17 workflows
Outbound Copywriting

Cold-Email Campaign Generation

1 live

Turns a list of leads into five on-brand cold-email drafts each, ready for a human to pick.

Form: Draft InputsParse Sheet URLEnsure drafts tab exi…Read ICP_passed_with_…Fetch Website HTMLBuild ICP ContextClaude: Draft Campaig…Ollama ModelParse + Split DraftsCompliance CheckLLM Compliance ReviewMerge LLM VerdictAppend to drafts tabAggregate DraftsSend Confirmation Ema…
Live workflow map5-style draft generator · 15 nodes
How it runsStarts from a form with a sheet link and a notify email
  1. 1Reviewer submits a sheet of leads and a notify address
  2. 2Read the verified-lead tab and prepare a drafts tab
  3. 3Generate 5 distinct style variants per lead with Claude
  4. 4Write every draft back into the sheet
  5. 5Email a confirmation when the batch is done

Five voices per lead — the human chooses, not the machine.

Anthropic ClaudeGoogle SheetsOllamaGmail
12 workflows
Call → CRM Signals

Sales-Call Intelligence (MEDDPICC)

in development

Listens to recorded sales calls and writes qualification signals straight into the CRM.

Gong Transcript ReadyRespond 200 to GongFetch Gong TranscriptFetch Gong Call Metad…Merge Gong DataExtract SF Opportunit…Is call processable?Create SF Task: Link …Fetch SF Opportunity …Fetch SF Contacts on …Merge All ContextBuild MEDDPICC Extrac…Claude: Extract MEDDP…Parse & Filter Propos…Has proposals?Upsert SF MEDDPICC Pr…Build Slack Review Me…Notify AE via SlackSlack Action CallbackParse Slack ActionApproved?Fetch Pending Proposa…Apply Approved Update…Commit Updates to SFConfirm in SlackAcknowledge Dismiss
Live workflow mapCall → signal capture · 26 nodes
How it runsTriggered when a call recording’s transcript is ready
  1. 1The call platform fires a webhook on transcript-ready
  2. 2Fetch the full transcript via API
  3. 3Claude extracts MEDDPICC qualification signals
  4. 4Draft proposal and next-step suggestions
  5. 5Push signals to the CRM and notify the rep on Slack

Turns every call into structured, comparable deal intelligence.

GongAnthropic ClaudeSalesforceSlack
7 workflows
Human-in-the-Loop Content

AI Content & Social Pipeline

in development

A content studio in a workflow: drafts strategy and creative, with human approval at every step.

Brief Intake FormBuild ContextShared OpenAI Chat Mo…Sofia — Strategy AgentSofia — Save OutputSofia — Approve AngleSofia — Route DecisionSofia — Pass FeedbackMarcus — Pre-ComputeMarcus — Creative Age…Marcus — Save OutputMarcus — Approve PostMarcus — Route Decisi…Marcus — Pass FeedbackPhase 2 Output — Appr…
Live workflow mapHITL content studio · 15 nodes
How it runsA reviewer submits a brief; the flow loops until approved
  1. 1Reviewer submits a content brief
  2. 2A strategy agent proposes on-brand angle options
  3. 3A creative agent turns the chosen angle into posts
  4. 4Human approves or sends feedback at each stage
  5. 5Approved content is published or handed off

Also drafts daily LinkedIn posts and repurposes Reddit threads into social copy.

OpenAIAnthropic ClaudeGoogle GeminiWebhook / Forms
9 workflows
Web-Scraping Verification

License & Agent Verification

4 live

Verifies a new agent’s professional license against official records the moment they’re activated.

Webhook — CRM Agent A…Validate CRM PayloadRespond — Invalid Pay…Call ScraperResult OK?State Adapter MapPick Adapter for StateHas Adapter for State?Respond — Unsupported…Call State License Sc…State License Result …Compare RecordsRespond — ErrorVerdict OK?Build Slack PayloadSend Slack Notificati…Respond to Webhook
Live workflow mapVerification orchestrator · 17 nodes
How it runsThe CRM fires a webhook when a new agent activates
  1. 1CRM posts the new agent’s details to a webhook
  2. 2Look up the license against the state authority
  3. 3Scrape the official record via browser automation
  4. 4Compare name, number and expiry
  5. 5Return a verified / flagged result to the CRM

Uses Firecrawl and Skyvern browser agents to read sites with no API.

FirecrawlSkyvernHTTP / RESTWebhook
8 workflows
Onboarding Automation

Client Onboarding Orchestration

in development

Runs a new client through full onboarding — subaccounts, folders, fields, emails — from one form.

Intake FormManual Trigger (test)Inject test dataPrep client stateCreate tracker rowShape payload: Notify…Notify: startedShape payload: DriveSub-G: Drive foldersShape payload: Notify…Notify: Drive doneShape payload: Sub-ASub-A: GHL subaccountShape payload: Notify…Notify: Sub-A doneShape payload: Sub-BSub-B: Configure suba…Shape payload: Notify…Notify: Sub-B doneShape payload: Sub-CSub-C: Custom fieldsShape payload: Sub-DSub-D: CalendarShape payload: Sub-ESub-E: ChatbotShape payload: Notify…Notify: all done
Live workflow mapOnboarding orchestrator · 27 nodes
How it runsA single intake form triggers an orchestrated chain of sub-workflows
  1. 1Intake form collects client data, mints an ID and tracker row
  2. 2Create and configure the CRM subaccount
  3. 3Provision custom fields, drive folders and a calendar widget
  4. 4Send client and internal onboarding emails
  5. 5The orchestrator coordinates each step and tracks state

Eleven coordinated sub-workflows behind a single form.

GoHighLevelGoogle SheetsGoogle DriveGmail
9 workflows
Weekly Reputation Brief

Reputation & Reviews Digest

3 live

Every Monday, scrapes a venue’s review pages and emails the owner a clean AI summary.

Build SourcesFirecrawl — Scrape Re…SerpApi — Google Revi…Normalize ScrapesClassify & Summarise …Ollama (Weekly Review…Build Email DigestSend Weekly Digest (G…Weekly Trigger (Mon 2…
Live workflow mapWeekly reviews digest · 9 nodes
How it runsScheduled weekly (Monday 08:00)
  1. 1List the venue’s review pages across platforms
  2. 2Scrape the latest reviews from each
  3. 3Summarize sentiment and themes with an LLM
  4. 4Format a tidy weekly digest
  5. 5Email it to the owner

Deployed per venue across hotels and restaurants.

HTTP / RESTOllamaGmailSchedule
3 workflows
Data Hygiene

Lead Cleaning & Verification

in development

Cleans, classifies and email-verifies raw lead lists before they ever enter outbound.

If - ICP Passed1Form Trigger - Google…Parse Sheet URLSheets - Read Enrichm…Sample Test LeadsSheets Trigger - New/…Build Lead PayloadClaude Haiku - Clean …Parse Claude JSONMillion Verifier - St…If - Needs Stage 1Bouncer - Stage 1Map Stage 1 ResultMap Stage 2 ResultMerge Verification Re…Sheets - Update RowSheets - Mark Not Pas…Slack - Error NoticeSetup - Get Sheet InfoSetup - Compute Missi…Setup - Add Missing C…Filter - Passed With …
Live workflow mapLead cleaner & verifier · 22 nodes
How it runsTriggered by a form upload or a new sheet row
  1. 1Accept an uploaded list or watch a sheet for new rows
  2. 2Claude cleans and classifies each record
  3. 3Verify emails through two independent providers
  4. 4Merge results and flag invalid rows
  5. 5Write the clean list back and alert on Slack

Double email verification keeps bounce rates low.

Anthropic ClaudeGoogle SheetsSlackHTTP / REST
4 workflows
Deck & Deal Analysis

Investor & Pitch Intelligence

1 live

Analyzes pitch decks and builds investor-ready research briefs on demand.

Pitch Deck WebhookRespond AcceptedNormalizeBuild Deck RequestClaude Read DeckParse DeckFirecrawl Scrape Webs…Firecrawl Search Revi…Firecrawl Search Indu…Build ContextClaude SynthesizeAssemble ResultPost CallbackFind Peers RequestClaude Find PeersBuild Screener ItemsFirecrawl Scrape Scre…Aggregate ScreenerBuild Comps RequestClaude Comps Fin
Live workflow mapPitch deck analyzer · 20 nodes
How it runsOn-demand via webhook
  1. 1Receive a pitch deck or a company URL
  2. 2Scrape and extract the key content with Firecrawl
  3. 3An LLM analyzes deck, market and funding signals
  4. 4Assemble a structured brief
  5. 5Return it via webhook

Built for fast first-pass diligence.

FirecrawlAnthropic ClaudeHTTP / REST
3 workflows
Cold-Email Infrastructure

Domain & Inbox Provisioning

in development

Spins up sending domains and mailboxes for a new outbound campaign — from one form.

Form: Client IntakeNormalize InputsRead Domain HistoryScrape Client Site (F…Build Claude PromptGenerate Domain Ideas…Claude Sonnet 4Parse CandidatesRDAP Availability Che…Collect Available Dom…Any Domains Available?Form: No Domains FoundForm: Select DomainsForm: Purchase StartedSelected DomainsPorkbun: Check DomainAssess PurchasabilityEligible To Buy?Porkbun: Register Dom…Mark PurchasedMark Purchase FailedMerge Purchase Outcom…Purchase SummaryAny Purchased?InboxKit: Get Nameser…Split NS ResultsPorkbun: Update Names…Save To Domain HistoryCollect Domain ListWait 10 MinInboxKit: Check Propa…Evaluate PropagationPropagation Done?Build Mailbox PayloadAny Mailboxes To Crea…InboxKit: Buy Mailbox…Collect Mailbox OrderWait 5 MinInboxKit: Mailbox Sta…Evaluate Mailbox Stat…Mailboxes Ready?Build Slack SummaryBuild Failure NoticeNotify Slack (placeho…
Live workflow mapDomain & mailbox provisioner · 44 nodes
How it runsAn intake form (website + sender + domain count)
  1. 1Form collects website, sender name and domain count
  2. 2An LLM suggests on-brand domain variants
  3. 3Register domains and create two mailboxes each
  4. 4Configure records and warm-up
  5. 5Track everything in a data table

Two mailboxes per domain, provisioned and tracked automatically.

Anthropic ClaudeData TablesHTTP / REST
1 workflows
Sequencing & Dispatch

Outbound Campaign Launch

in development

Groups leads by market and timezone, then launches them into the right sending tool.

Manual Test TriggerTest FixturesSchedule Trigger (30m)Sheets - Read Verifie…Sheets - Read Campaig…Tag _kind=leadTag _kind=scriptMerge Leads + ScriptsGroup & Batch Campaig…Channel SwitchSmartlead - Create Ca…Smartlead - Add LeadsSmartlead - Set Sched…Smartlead - Save Sequ…Get Sales - Create Ca…Get Sales - Add LeadsGet Sales - Save Sequ…Fan Out → Lead RowsSheets - Update Deplo…Shape Slack AlertSlack - #sales-signals
Live workflow mapCampaign setup & dispatch · 21 nodes
How it runsScheduled, with a manual dry-run path for safety
  1. 1Read campaign-ready leads from sheets
  2. 2Group by industry, region and timezone
  3. 3Batch and route to the right sending platform
  4. 4Push into Smartlead / GetSales sequences
  5. 5Report the launch on Slack

A manual test path dry-runs the logic without touching live sends.

Google SheetsSmartleadGetSalesSlack
2 workflows
1:1 Personalization

Personalized Outreach & Icebreakers

in development

Researches each prospect and writes a genuinely personal, multi-line icebreaker.

Remove Duplicate URLsWhen clicking ‘Test w…HTMLSplit OutFilterRequest web page for …MarkdownSummarize Website PageLimitScrape HomeAggregateGenerate Multiline Ic…Add RowCall Apify ScraperGet Search URLEdit FieldsOnly Websites & EmailsLoop Over ItemsCode
Live workflow mapIcebreaker system · 19 nodes
How it runsBatch run over a lead sheet
  1. 1Pull prospects from a sheet
  2. 2Scrape each prospect’s public profile and site
  3. 3An LLM writes a tailored multi-line icebreaker
  4. 4De-duplicate and quality-filter
  5. 5Write the icebreakers back to the sheet

Personalization at list scale, not template mail-merge.

OpenAIGoogle SheetsHTTP / REST
2 workflows
Generative Video

AI Video Generation & Publishing

in development

Generates short-form videos from a brief and prepares them for multi-platform publishing.

briefGPT-4o-mini: scene pl…Expand scenes to clipsLoop clipsRoute by modelVeo: start genVeo: waitVeo: poll statusVeo: extract URLKling: start genKling: waitKling: poll statusKling: extract URLRunway: start genRunway: waitRunway: poll statusRunway: extract URLMerge model outputsAggregate clipsBuild JSON2Video specJSON2Video: start ren…JSON2Video: waitJSON2Video: poll stat…JSON2Video: check doneDownload MP4Upload to DriveEmail link
Live workflow mapAI video generator · 27 nodes
How it runsForm-triggered, with sample data pinned for testing
  1. 1A form captures the video brief
  2. 2Generate scenes and clips via AI video APIs
  3. 3Stitch and render the final video
  4. 4Save to Drive and notify
  5. 5Hand off for multi-platform publishing

Brief in, finished short-form video out.

HTTP / RESTGoogle DriveGmail
2 workflows
Always-On Radar

News Monitoring & Curation

in development

Continuously curates relevant, on-topic news into a clean, readable feed.

▶ Setup: Create TableCreate News TableEvery 6 HoursList RSS FeedsFetch Feeds One by OneRead RSS FeedNormalize ArticlesLog Feed ErrorKeep Valid New Articl…Skip Already SeenBatch for ClaudeScore Positivity (Cla…Claude Sonnet 4.6Skip Failed BatchParse VerdictsSave Curated ArticlesBuild Run SummaryPrune Old ArticlesNews PageLoad ArticlesRender News HTMLServe News Page
Live workflow mapNews curator · 22 nodes
How it runsRuns every 6 hours on a schedule
  1. 1Pull from RSS feeds and sources every 6 hours
  2. 2An LLM scores and filters each article
  3. 3Store curated items in a data table
  4. 4Dedupe against what’s already been seen
  5. 5Serve a reader page via webhook

A self-updating reader page, no manual editing.

RSSAnthropic ClaudeData TablesWebhook
2 workflows
Ops Automation

Project-Management Automation

2 live

Posts scheduled, data-driven comments and updates into project tasks automatically.

Editor (GET)Respond EditorUsers (GET)Get MeAsana UsersReshape UsersWrap UsersRespond UsersSchedule (POST)Build RowSheet AppendRespond SchedulePending (GET)Sheet Read PendingWrap PendingRespond PendingCancel (POST)Pick Cancel IdSheet Mark CancelledRespond CancelEvery MinuteSheet Read Pending (C…Due NowBuild Asana RequestCall AsanaSent OK?Compose Sent UpdateCompose Failed UpdateSheet Mark SentSheet Mark Failed
Live workflow mapScheduled task comments · 30 nodes
How it runsScheduled, plus a webhook entry point
  1. 1Read the schedule and config from a sheet
  2. 2Filter which tasks are due an update
  3. 3Compose the comment content
  4. 4Post the comments to the project tool
  5. 5Log and respond with the result

Keeps boards current without anyone touching them.

AsanaGoogle SheetsHTTP / REST
2 workflows
Conversational Booking

Voice-Agent Scheduling

in development

Lets an AI phone agent book, check and cancel appointments on a live calendar in real time.

Webhook1Available?1Check Availability Ag…Set Up VariablesBook AppointmentGet availability in a…Send a messageConfirm BookingConfirm Available Tim…Sort Available SlotsAggregateConfirm The Time's Un…If
Live workflow mapVoice booking webhook · 13 nodes
How it runsWebhook from the voice agent
  1. 1The voice agent posts the caller’s request
  2. 2Branch on book / check / cancel
  3. 3Read or write Google Calendar
  4. 4Confirm by email
  5. 5Respond to the agent in real time

Turns a natural phone conversation into real calendar actions.

ElevenLabsGoogle CalendarGmailWebhook
1 workflows
Site-Mapping Engine

Website Crawler

in development

A queue-based recursive crawler that maps a company’s entire site — the engine behind enrichment.

When Executed by Anot…Sitemap Queue1Collect Pages3Seed Sitemap3Fetch Sitemap3Extract Locs3Is Sitemap?3Fetch Raw HTML3Code in JavaScript2Code in JavaScript3Filter for Key Webpag…Reformat Relevant URL…Did Sitemap Load?Fetch HomepageExtract Homepage Links
Live workflow mapRecursive sitemap crawler · 15 nodes
How it runsInvoked by the enrichment pipeline per account
  1. 1Read the site’s sitemap and seed the crawl queue
  2. 2Recursively discover and fetch pages, breadth-first
  3. 3Fall back to a homepage crawl when no sitemap exists
  4. 4Hand the cleaned pages to an LLM for analysis

Costed and tuned at scale — ~$0.036 per account across 30,000 accounts.

HTTP / RESTGoogle Gemini
4 workflows
Deal-Matching Engine

Call→Opportunity Matcher

in development

The matching brain: reliably links any call to the correct opportunity through a confidence waterfall.

▷ Manual TestTest InputsWhen Called by Zoom I…Normalize InputsQuery SFDC EventsResolve via Event (P1)P1 Resolved?Get Rep UserGet Rep Open OppsExtract Prospect NameResolve Opp (waterfal…Build Match ResultShadow LogReturn to Caller
Live workflow mapResolver (shadow) · 14 nodes
How it runsCalled as a sub-workflow by other pipelines
  1. 1Match on a calendar event in a ±30-min window (highest confidence)
  2. 2Fall back to the host rep’s open pipeline
  3. 3Gemini extracts the prospect name and fuzzy-matches the account
  4. 4Shadow-log the result for accuracy comparison — no CRM writes

Runs in shadow beside the live pipeline to prove match accuracy.

SalesforceGoogle GeminiData Tables
2 workflows

Platform & operations

The plumbing that keeps the suite safe and observable

Weekly Rep Sync

1 live

Every Monday, refreshes the list of eligible reps from the CRM — with a safety net that never wipes the list and alerts on a big drop.

SalesforceSlackData Tables

Pipeline Control & Kill Switches

1 live

One-click webhook START / STOP for every pipeline, backed by a control table so runs can be halted mid-flight.

Data TablesWebhook

Telemetry & Error Logging

1 live

A global error trap that captures every workflow failure, logs it to Supabase and notifies a human.

SupabaseSlack