Prospektering låter enkelt tills du faktiskt gör det. Du söker, klickar, kopierar en webbplatslänk, gissar rätt e-postadress, skriver om samma intro-rad och upprepar sedan 30 gånger till.
Om du är en marknadschef som försöker fylla pipen märker du snabbt hur det släpar. En solofounder som säljer mellan möten känner det också. Samma sak för en byråansvarig som jonglerar kundutskick. Den här Hunter Gmail outreach-automationen gör “research + utkast + skicka” till en upprepbar körning.
Du får lära dig vad arbetsflödet gör, vad du behöver koppla in och hur delarna hänger ihop så att du kan börja skicka skräddarsydda kalla mejl utan att bo i kalkylark.
Så fungerar den här automationen
Här är hela arbetsflödet som du kommer att sätta upp:
n8n Workflow Template: Hunter.io + Gmail: personaliserad outreach åt dig
flowchart LR
subgraph sg0["compagny_search Flow"]
direction LR
n0@{ icon: "mdi:brain", form: "rounded", label: "OpenAI Chat Model", pos: "b", h: 48 }
n1["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/form.svg' width='40' height='40' /></div><br/>compagny_search"]
n2["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>Search Local Businesses"]
n3@{ icon: "mdi:swap-vertical", form: "rounded", label: "Split Out Businesses", pos: "b", h: 48 }
n4@{ icon: "mdi:swap-horizontal", form: "rounded", label: "If Website Exists", pos: "b", h: 48 }
n5["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>Scrape Website"]
n6@{ icon: "mdi:swap-horizontal", form: "rounded", label: "If Scraping Succeeded", pos: "b", h: 48 }
n7["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/html.dark.svg' width='40' height='40' /></div><br/>Extract Title & Description"]
n8["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/hunter.png' width='40' height='40' /></div><br/>Find Contacts (Hunter)"]
n9@{ icon: "mdi:swap-vertical", form: "rounded", label: "Split Out Contacts", pos: "b", h: 48 }
n10@{ icon: "mdi:swap-horizontal", form: "rounded", label: "If Contact Is Valid", pos: "b", h: 48 }
n11@{ icon: "mdi:robot", form: "rounded", label: "Generate Email Body (AI)", pos: "b", h: 48 }
n12["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/code.svg' width='40' height='40' /></div><br/>Format AI Output"]
n13@{ icon: "mdi:swap-vertical", form: "rounded", label: "Assemble Final Email", pos: "b", h: 48 }
n14@{ icon: "mdi:message-outline", form: "rounded", label: "Send Email (Gmail)", pos: "b", h: 48 }
n15@{ icon: "mdi:swap-vertical", form: "rounded", label: "Set Task Data", pos: "b", h: 48 }
n16@{ icon: "mdi:cog", form: "rounded", label: "Create Google Task for Follo..", pos: "b", h: 48 }
n15 --> n16
n5 --> n6
n1 --> n2
n12 --> n13
n4 --> n5
n4 --> n15
n0 -.-> n11
n9 --> n10
n10 --> n11
n13 --> n14
n3 --> n4
n6 --> n7
n8 --> n9
n2 --> n3
n11 --> n12
n7 --> n8
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n1 trigger
class n11 ai
class n0 aiModel
class n4,n6,n10 decision
class n2,n5 api
class n12 code
classDef customIcon fill:none,stroke:none
class n1,n2,n5,n7,n8,n12 customIcon
Varför det här spelar roll: kalla utskick fallerar när det görs manuellt
Manuella utskick är inte bara “tidskrävande”. De är sköra. En flik stängs, en lead blir halvresearchad och plötsligt har du en lista med företag utan kontakt, utan kontext och utan koll på vad du tänkte skicka. Sedan finns kvalitetsproblemet: även när du skickar låter mejlet som en mall, eftersom du har bråttom och den personliga kroken är det första som ryker. Efter en vecka med detta saktar de flesta ner eller slutar helt, vilket är den verkliga pipeline-dödaren.
Friktionen byggs på. Här är var det brukar falla isär.
- Du lägger cirka 10 minuter per företag bara på att förstå vad de gör och om de ens har en riktig webbplats.
- Att gissa e-postadresser slösar tid, och fel adresser sänker leveransbarheten i det tysta när du väl trycker på skicka.
- Personalisering blir “fejkpersonalisering”, eftersom du inte kan läsa om 30 webbplatser och ändå bli klar för dagen.
- Leads utan webbplats ignoreras, även när de kan vara värda en snabb manuell koll senare.
Det du bygger: lokal lead-research till AI-mejl, automatiskt
Det här arbetsflödet fungerar som en lättviktig AI-säljassistent för lokal B2B-prospektering. Du börjar med att skicka in en enkel sökförfrågan (till exempel “engineering firms in London”). Automationen hämtar en lista med företag, expanderar dem till individuella poster och kontrollerar direkt om det finns en webbplats så att du inte slösar tid på återvändsgränder. För företag med en webbplats hämtar den sidinnehåll, extraherar en titel och sammanfattning, och använder sedan Hunter.io för att hitta och verifiera professionella kontakter kopplade till domänen. Till sist skriver OpenAI ett kort, professionellt mejl som refererar till vad företaget faktiskt gör, och Gmail skickar det åt dig. Om ett företag saknar webbplats skapar arbetsflödet en uppföljningsuppgift i Google Tasks så att det inte försvinner.
Arbetsflödet börjar med dina sökkriterier och slutar med skickade utskick och en strukturerad uppföljningsspårning. Hunter.io sköter kontaktletning och verifiering, OpenAI sköter “skriv det som en människa”-delen och Gmail är leveransmotorn. Google Tasks fångar upp specialfallen.
Det du bygger
| Vad som automatiseras | Vad du uppnår |
|---|---|
|
|
Förväntade resultat
Säg att du vill kontakta 30 lokala företag med ett nytt erbjudande. Manuellt: om du lägger cirka 10 minuter på att researcha varje webbplats och ytterligare 5 minuter på att hitta en e-postadress och skriva ett utkast, blir det ungefär 7 timmar. Med det här arbetsflödet skickar du in sökningen en gång, låter det köra och lägger sedan cirka 30 minuter på att skanna de mejlutkast som ska iväg (plus bakgrundstid medan skrapning och textgenerering pågår). Det är nästan en hel arbetsdag tillbaka.
Innan du börjar
- n8n-instans (prova n8n Cloud gratis)
- Alternativ för egen hosting om du föredrar det (Hostinger fungerar bra)
- Hunter.io för att hitta och verifiera kontakter.
- Gmail för att skicka dina outreach-mejl automatiskt.
- OpenAI API-nyckel (hämta den i OpenAI API-dashboarden).
Svårighetsgrad: Medel. Du kopplar konton, lägger in API-nycklar och rimlighetskontrollerar inställningar för mejlutskick.
Vill du att någon bygger detta åt dig? Prata med en automationsexpert (gratis 15-minuters konsultation).
Steg för steg
Du skickar in en företagssökning. Arbetsflödet startar med en enkel formulärtrigger där du anger dina kriterier (bransch + plats är den vanliga kombinationen). Den inputen blir frågan som används i sökförfrågan.
Företagsposter expanderas och gallras. Resultaten delas upp i enskilda företag, och en kontroll “finns det en webbplats?” avgör vad som händer härnäst. Företag utan webbplats skickas vidare till en uppföljningsväg så att du kan granska dem senare.
Webbplatskontext och verifierade kontakter samlas in. För företag med webbplats hämtar arbetsflödet sidinnehåll, bekräftar att skrapningen fungerade och extraherar en titel och en kort sammanfattning. Den kontexten skickas till Hunter.io för att hitta kontakter, och varje kontakt valideras så att du inte skickar till skräpdata.
OpenAI skriver, Gmail skickar och uppföljning hålls strukturerad. AI:n skriver ett kort outreach-mejl som refererar till vad den lärde sig från webbplatsen, formateringskod gör texten korrekt formaterad och ett sista steg “bygg mejl” förbereder ämne/brödtext för Gmail. Om arbetsflödet behövde hoppa över ett företag (ingen webbplats) får Google Tasks en snygg uppgift med detaljerna.
Du kan enkelt justera sökkriterierna och mejlstilen så att de matchar ditt erbjudande och din tonalitet. Se hela implementeringsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementering
Steg 1: konfigurera formulärtriggern
Skapa formuläret som samlar in sökkriterier för leads och startar arbetsflödet.
- Lägg till eller öppna Business Search Form och ställ in Form Title till
compagny_search. - I Form Fields konfigurerar ni etiketter och platshållare: Business Sector med platshållaren
[ engineering ], city med platshållaren[ London ]och Number of Leads med platshållaren[ 20 ]. - Spara formuläret och kopiera trigger-URL:en om ni planerar att bädda in det externt.
Steg 2: anslut datakällan för leads
Gör en förfrågan mot en lokal företagsdatamängd med hjälp av formulärinmatningarna och bryt sedan ut resultaten till enskilda poster.
- Öppna Query Local Companies och ställ in URL till
https://local-business-data.p.rapidapi.com/search. - Aktivera Send Query och Send Headers, och behåll Authentication som
genericCredentialTypemed Generic Auth TypehttpHeaderAuth. - I Query Parameters ställer ni in query till
{{ $json["Business Sector"] }} {{ $json.city }}och limit till{{ $json["Number of Leads"] }}. Behåll zoom13, languagefr, regionfroch extract_emails_and_contactsfalse. - I Header Parameters ställer ni in x-rapidapi-host till
local-business-data.p.rapidapi.com. - Autentiseringsuppgifter krävs: Anslut era httpHeaderAuth-autentiseringsuppgifter för Query Local Companies.
- Öppna Expand Business Records och ställ in Field to Split Out till
data.
Steg 3: validera webbplatser och berika företagskontext
Kontrollera om webbplatser finns, skrapa innehåll och extrahera sidtitel och beskrivning för personalisering.
- I Check Website Presence behåller ni villkoret som
{{ $json.website }}är inte tomt. - I Fetch Website Content ställer ni in URL till
{{ $json.website }}och låter Send Headers vara aktiverat. - I Verify Scrape Success behåller ni villkoret
{{ !$json.hasOwnProperty('error') }}är lika medtrue. - I Pull Page Title & Summary säkerställer ni att Operation är
extractHtmlContentmed extraktionsnycklarnascraped_titlemed selektorntitleochscraped_descriptionmed selektornmeta[name="description"]med attributetcontent.
Check Website Presence skickar utdata både till Fetch Website Content och Map Follow-up Details parallellt, vilket gör att skrapning och uppgiftsmappning kan fortsätta samtidigt.
Steg 4: hitta och validera kontakter
Använd Hunter för att hitta kontakter, dela upp dem i individuella poster och validera endast användbara uppgifter.
- I Locate Contacts via Hunter ställer ni in Domain till
{{ $('Expand Business Records').item.json.tld }}och behåller Limit på10. - Autentiseringsuppgifter krävs: Anslut era hunterApi-autentiseringsuppgifter för Locate Contacts via Hunter.
- I Unpack Contact Entries ställer ni in Field to Split Out till
valueoch Include tillallOtherFields. - I Validate Contact Details behåller ni villkoren:
{{ $json.first_name }}är inte tomt och{{ $('Locate Contacts via Hunter').item.json.verification.status }}är lika medvalid.
Steg 5: konfigurera AI-generering av e-post
Skapa ett personaliserat outreach-meddelande med AI-modellen och formatera det för ren e-postutmatning.
- Öppna OpenAI Conversation Model och välj modellen
gpt-5-nano-2025-08-07. - Autentiseringsuppgifter krävs: Anslut era openAiApi-autentiseringsuppgifter i OpenAI Conversation Model. Den här noden tillhandahåller språkmodellen för Compose Outreach Email AI, så autentiseringsuppgifter måste läggas till i OpenAI Conversation Model (inte i agentnoden).
- I Compose Outreach Email AI behåller ni Prompt Type som
defineoch ställer in Text tillHere is the information about your target : ...med uttrycken för namn, roll och webbplatsdata intakta. - Bekräfta att System Message i Compose Outreach Email AI matchar outreach-instruktionerna och endast returnerar e-postens brödtext.
- I Format AI Text behåller ni den angivna JavaScript Code för att konvertera AI-utdata till
formatted_textmed styckebrytningar.
Steg 6: konfigurera e-post och uppföljningsåtgärder
Bygg det slutliga e-postinnehållet, skicka det via Gmail och skapa en uppföljningsuppgift.
- I Build Final Email ställer ni in email_subject till
Developing the business of {{ $('Check Website Presence').item.json.name }}. - Ställ in email_body till
Hi {{ $('Unpack Contact Entries').item.json.first_name }}, \n\n{{ $json.formatted_text }}\n\nDear,\n. - I Dispatch Gmail Message ställer ni in Send To till
{{ $('Locate Contacts via Hunter').item.json.value }}, Subject till{{ $json.email_subject }}och Message till{{ $json.email_body }}. - Autentiseringsuppgifter krävs: Anslut era gmailOAuth2-autentiseringsuppgifter för Dispatch Gmail Message.
- I Map Follow-up Details mappar ni phone_number till
{{ $json.phone_number }}, compagny_name till{{ $json.name }}, adress till{{ $json.full_address }}och type till{{ $json.type }}. - I Create Follow-up Task ställer ni in Task till
[YOUR_ID]och Title tillAppeler {{ $json.compagny_name }} au {{ $json.phone_number }} Pour création de site web !. - Autentiseringsuppgifter krävs: Anslut era googleTasksOAuth2Api-autentiseringsuppgifter för Create Follow-up Task.
⚠️ Vanlig fallgrop: Om Hunters verifieringsstatus inte är valid kommer Validate Contact Details att stoppa AI- och e-poststegen. Säkerställ att er Hunter-plan stödjer verifieringsstatus, eller justera villkoret för ert användningsfall.
Steg 7: testa och aktivera ert arbetsflöde
Kör ett fullständigt test för att bekräfta leadsökning, berikning, AI-utdata och e-postleverans innan ni aktiverar.
- Klicka på Test Workflow och skicka in Business Search Form med exempelvärden (t.ex.
engineering,London,5). - Verifiera att Query Local Companies returnerar resultat och att Expand Business Records ger utdata med enskilda företag.
- Bekräfta att Pull Page Title & Summary extraherar
scraped_titleochscraped_description, och att Compose Outreach Email AI returnerar en ren e-postbrödtext. - Kontrollera att Dispatch Gmail Message skickar ett e-postmeddelande med förväntat ämne/brödtext och att Create Follow-up Task skapar en uppgift i Google Tasks.
- När allt fungerar, växla arbetsflödet till Active för att köra i produktion.
Tips för felsökning
- Hunter.io-inloggning kan löpa ut eller kräva specifika behörigheter. Om det skapar fel, kontrollera först status på din Hunter.io API-nyckel och dina planbegränsningar i Hunter-dashboarden.
- Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om efterföljande noder fallerar på tomma svar.
- Gmail kan blockera eller strypa utskick om du skalar upp för snabbt. Börja med en liten batch, bekräfta att mejlen landar som de ska och öka volymen när ditt sändmönster ser normalt ut.
Snabba svar
Cirka 30 minuter om dina konton och API-nycklar är redo.
Nej. Du kopplar Hunter.io, OpenAI och Gmail, och justerar sedan några fält som ditt erbjudande och avsändarnamn.
Ja. n8n har ett gratis alternativ för egen hosting och en gratis provperiod på n8n Cloud. Cloud-planer börjar på 20 USD/månad för högre volym. Du behöver också räkna in OpenAI API-kostnader (ofta några cent för en batch mejl) och din Hunter.io-plan.
Två alternativ: n8n Cloud (hanterat, enklast att komma igång) eller egen hosting på en VPS. För egen hosting är Hostinger VPS prisvärt och hanterar n8n bra. Egen hosting ger dig obegränsade körningar men kräver grundläggande serverhantering.
Ja, och det bör du. De flesta anpassningar görs i “Business Search Form” (din targeting), “Compose Outreach Email AI” (din prompt och ton) och “Build Final Email” (ämnesrad och signatur). Du kan också byta ut steget “Create Follow-up Task” till att skicka till Slack eller ett Google Sheet om det är där teamet jobbar.
Oftast är det ett problem med API-nyckeln eller en planbegränsning. Skapa en ny Hunter.io-nyckel och uppdatera den i n8n, och kontrollera sedan i Hunter-dashboarden om du träffar rate limits eller blockerade endpoints. Om arbetsflödet hämtar många företag samtidigt, minska batchstorleken så att du inte kör Hunter för hårt. Bekräfta också att domänen du söker på faktiskt matchar företagets webbplats som du skrapade, eftersom mismatch ofta ser ut som “ingen data”-fel.
I n8n Cloud beror det på din plans månadsvisa körningar, och vid egen hosting beror det på din server. I praktiken: börja med batchar på 10–30 företag per körning så att du kan granska resultat och hålla dig inom Hunter.io- och Gmail-gränser.
Ofta, ja, eftersom den här typen av flöde behöver förgreningar, loopar över företag och kontakter och lite datatransformering innan utskick. n8n hanterar det utan att bli en skör kedja av “mini-zaps”, och du kan köra egen hosting om du vill ha obegränsade körningar. Zapier eller Make kan fortfarande fungera om din version är enkel (en leadkälla, en kontakt, ett mejl) och du inte har något emot att kostnaden ökar när volymen växer. Den större frågan är kontroll: vill du kunna granska och justera prompts, skrapning och valideringslogik över tid? Om du är osäker, prata med en automationsexpert och få en snabb rekommendation.
När det här väl rullar slutar outbound vara en “stor uppgift” som du hela tiden skjuter upp. Arbetsflödet tar hand om det repetitiva, så att du kan lägga tiden på targeting och erbjudanden som faktiskt gör skillnad.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.