Din leadlista ser bra ut i ett kalkylark. Sedan trycker du på ”skicka” och verkligheten kommer ikapp: studsar, catch-all-adresser, kontakter med låg köpintention och ett avsändarrykte som i tysthet glider nedåt.
Ansvariga för demand gen märker det när kampanjer slutar landa i inkorgar. Byråägare ser det när kunder skyller på ”dåliga leads”. Och om du driver ett litet säljteam är den här automatiseringen för lead email scoring skillnaden mellan strukturerad outreach och bortkastade uppföljningar.
Det här flödet bevakar Google Sheets, validerar och poängsätter varje ny kontakt med ZeroBounce, mejlar bara de bästa leadsen via Gmail och skriver tillbaka allt så att du inte skickar dubbelt. Du får se hur det fungerar, vad du behöver och var team oftast kör fast.
Så fungerar den här automatiseringen
Här är det kompletta arbetsflödet du kommer att sätta upp:
n8n Workflow Template: Google Sheets + ZeroBounce: mejla bara topplistor
flowchart LR
subgraph sg0["Google Sheets Flow"]
direction LR
n0@{ icon: "mdi:message-outline", form: "rounded", label: "Send a message", pos: "b", h: 48 }
n1@{ icon: "mdi:play-circle", form: "rounded", label: "Google Sheets Trigger", pos: "b", h: 48 }
n2@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Filter by score", pos: "b", h: 48 }
n3@{ icon: "mdi:cog", form: "rounded", label: "Validate email", pos: "b", h: 48 }
n4@{ icon: "mdi:cog", form: "rounded", label: "Score email", pos: "b", h: 48 }
n5@{ icon: "mdi:database", form: "rounded", label: "Add Scoring Results", pos: "b", h: 48 }
n6@{ icon: "mdi:database", form: "rounded", label: "Add validation results", pos: "b", h: 48 }
n7@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Email is valid?", pos: "b", h: 48 }
n8@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Validate?", pos: "b", h: 48 }
n9@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Score?", pos: "b", h: 48 }
n10@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Email?", pos: "b", h: 48 }
n11@{ icon: "mdi:database", form: "rounded", label: "Add Emailed = false", pos: "b", h: 48 }
n12@{ icon: "mdi:database", form: "rounded", label: "Add Emailed = true", pos: "b", h: 48 }
n13@{ icon: "mdi:swap-vertical", form: "rounded", label: "Not valid", pos: "b", h: 48 }
n14@{ icon: "mdi:swap-vertical", form: "rounded", label: "Low score", pos: "b", h: 48 }
n15@{ icon: "mdi:swap-vertical", form: "rounded", label: "Medium score", pos: "b", h: 48 }
n10 --> n0
n9 --> n4
n9 --> n2
n14 --> n11
n13 --> n11
n8 --> n3
n8 --> n7
n4 --> n5
n15 --> n11
n0 --> n12
n3 --> n6
n7 --> n9
n7 --> n13
n2 --> n14
n2 --> n15
n2 --> n10
n5 --> n2
n1 --> n8
n6 --> n7
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 n2,n7,n8,n9,n10 decision
class n5,n6,n11,n12 database
Varför det här spelar roll: att skicka till fel leads
De flesta team har inte ett ”leadgenereringsproblem”. De har ett problem med leadkvalitet som visar sig senare, efter att skadan redan är skedd. Du importerar en lista, skrapar några kontakter eller samlar formulärsvar i Google Sheets, och sedan kontrollerar någon manuellt ett par mejladresser (eller så gör man det inte). Plötsligt studsar Gmail-meddelanden, svaren torkar ut och du fastnar i att gissa vad som fallerade: din copy, ditt erbjudande eller din lista. Det är en långsam läcka. Och ärligt talat är det utmattande att behöva kontrollera samma rader igen varje vecka.
Det eskalerar snabbt. Här är var det brukar fallera.
- Någon glömmer att validera nya rader, så ogiltiga adresser följer med in i en kampanj och studsar direkt.
- Catch-all- eller lågkvalitetsmejl ser ”giltiga” ut, vilket gör att säljare lägger tid på att jaga personer som aldrig konverterar.
- Team validerar samma leads om och om igen eftersom det saknas en pålitlig status för ”redan behandlad”.
- En enda oavsiktlig dubbelsändning kan bränna en relation, särskilt om flera personer delar samma inkorg.
Det du bygger: en kvalificeringsgrind innan Gmail skickar
Den här automatiseringen gör ditt Google Sheet till en enkel och pålitlig leadpipeline. Den startar när en rad läggs till eller uppdateras i kalkylarket. Flödet kontrollerar om leadet redan har validerats och poängsatts; om inte skickar det mejladressen till ZeroBounce för validering först och kör sedan (bara om den är giltig) ZeroBounce A.I. Scoring för att betygsätta leadkvalitet på en skala 0–10. Låga och medelhöga leads taggas och markeras som ”inte mejlad” med en tydlig anledning. Leads med höga poäng (9–10) får automatiskt ett mejl från Gmail, och flödet skriver tillbaka slutstatus så att du kan följa vad som hände och undvika dubbletter senare.
Flödet börjar med att Google Sheets bevakar din lista. ZeroBounce sköter validering och poängsättning i mitten, och n8n:s logik för routning avgör vad som händer härnäst. Gmail triggas bara när ett lead klarar din kvalitetsgräns, och därefter blir ditt ark den enda sanningskällan.
Det du bygger
| Vad som automatiseras | Vad du uppnår |
|---|---|
|
|
Förväntade resultat
Säg att du lägger till 50 nya leads per dag i Google Sheets. Manuellt är det lätt att lägga cirka 2 minuter per lead på validering, en snabb kvalitetskontroll och beslut om du ska mejla, vilket blir ungefär 100 minuter per dag. Med det här flödet släpper du in leadsen i arket och går vidare. Det kör validering och poängsättning automatiskt och skickar bara till 9–10-nivån, samtidigt som det uppdaterar varje rad så att du inte rör samma lead två gånger.
Innan du börjar
- n8n-instans (prova n8n Cloud gratis)
- Alternativ för egen hosting om du föredrar det (Hostinger fungerar bra)
- Google Sheets för att lagra leads och statusar.
- ZeroBounce för mejlvalidering och A.I.-baserad lead scoring.
- Gmail för att skicka outreach till leads i toppskiktet.
- ZeroBounce API-nyckel (hämtas i din ZeroBounce-dashboard).
Svårighetsgrad: Nybörjare. Du kopplar konton, mappar några kolumner och justerar en poänggräns om du vill.
Vill du att någon bygger detta åt dig? Prata med en automationsexpert (gratis 15-minuters konsultation).
Steg för steg
En rad i Google Sheet ändras. Flödet använder en Google Sheets-trigger som bevakar nya eller uppdaterade kontakter, så att du slipper exportera, ladda upp eller ”köra en batch” manuellt.
Validering sker bara när det behövs. Om ditt fält ”Validated” är tomt (eller false) skickar n8n mejladressen till ZeroBounce för verifiering och skriver tillbaka svaret till arket, inklusive en anledning när den är ogiltig.
Poängsättning placerar leadet i nivåer. Om adressen är giltig och ”Scored” inte har gjorts ännu betygsätter ZeroBounce A.I. Scoring leadet från 0 till 10. Ett routningssteg flaggar sedan låga, medelhöga eller redo-att-mejla-leads baserat på din gräns (det här flödet använder 9+ för outreach).
Gmail skickar bara till toppleads. När ett lead går igenom båda kontrollerna skickar Gmail meddelandet och n8n markerar raden som ”Emailed”, vilket blockerar dubbletter och gör arket pålitligt igen.
Du kan enkelt ändra poänggränsen för att vara striktare eller mer generös beroende på dina behov. Se hela implementationsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementation
Steg 1: Konfigurera triggern för bevakning av kalkylblad
Det här arbetsflödet startar när nya eller uppdaterade rader dyker upp i ert Google Sheet.
- Lägg till och öppna Spreadsheet Watch Trigger.
- Credential Required: Anslut era googleSheetsTriggerOAuth2Api-inloggningsuppgifter.
- Ställ in Document till bladet med e-postposter:
[YOUR_ID]. - Ställ in Sheet till
Sheet1(gid=0). - Lämna Poll Times som
everyMinuteför att upptäcka frekventa uppdateringar.
[YOUR_ID]. Ersätt det med ert faktiska Google Sheet-ID för att undvika att triggern misslyckas.Steg 2: Anslut Google Sheets
Flera noder skriver tillbaka validering, poängsättning och e-poststatus till Google Sheets.
- Öppna Write Validation Data och ställ in Document till
[YOUR_ID]och Sheet tillSheet1(gid=0). - Verifiera viktiga kolumnmappningar i Write Validation Data, som Email =
{{ $json.address }}och ZB Status ={{ $json.status }}. - Öppna Update Score Records och ställ in Document till
[YOUR_ID](arket ”ZeroBounce”) och Sheet tillSheet1(gid=0). - Bekräfta poängsättningsmappningar i Update Score Records, inklusive Email =
{{ $json.email }}, Score ={{ $json.score.toString() }}och Scored =true. - Öppna Mark Not Emailed och Mark Sent Email och verifiera att de riktar mot dokumentet
ZeroBouncemed matchning på Email. - Credential Required: Anslut era googleSheetsOAuth2Api-inloggningsuppgifter i Write Validation Data, Update Score Records, Mark Not Emailed och Mark Sent Email.
Email, Validated, Scored) så att uppdateringar matchar korrekt.Steg 3: Konfigurera e-postvalidering och poängsättning
ZeroBounce används för att validera adresser och beräkna lead scores.
- Öppna Need Validation? och behåll villkoret
{{ $json.Validated }}notEqualstrueför att undvika upprepad validering. - Öppna Verify Address och ställ in Email till
{{ $('Spreadsheet Watch Trigger').item.json.Email }}och Timeout till10. - Credential Required: Anslut era zeroBounceApi-inloggningsuppgifter i Verify Address.
- Öppna Need Scoring? och behåll villkoret
{{ $json.Scored }}notEqualstrueför att undvika upprepad poängsättning. - Öppna Assess Lead Score och bekräfta Email =
{{ $json.Email }}och Resource =scoring. - Credential Required: Anslut era zeroBounceApi-inloggningsuppgifter i Assess Lead Score.
Steg 4: Konfigurera routning och flaggor
Dessa noder avgör om en lead är giltig och vilken poängnivå den hamnar i.
- Öppna Check Address Valid och behåll villkoret ZB Status equals
validmed{{ $json['ZB Status'] }}. - Öppna Route by Score och bekräfta regler baserat på
{{ $json.Score }}: låg <3, medel <9, hög >=9. - Öppna Flag Low Score och säkerställ att tilldelad reason är
Low scoremed Include Other Fields aktiverat. - Öppna Flag Medium Score och säkerställ att tilldelad reason är
Low scoremed Include Other Fields aktiverat. - Öppna Tag Invalid Address och ställ in reason till
{{ $json['ZB Status'] }}med Include Other Fields aktiverat.
Steg 5: Konfigurera e-postutskick och statusuppdateringar
Endast leads med hög poäng får e-post och markeras som e-postade i arket.
- Öppna Ready to Email? och behåll villkoret
{{ $('Spreadsheet Watch Trigger').item.json.Emailed }}notEqualstrue. - Öppna Dispatch Email Notice och ställ in Send To till
{{ $json.Email }}, Subject tillTest from n8noch Message tillTest message. - Credential Required: Anslut era gmailOAuth2-inloggningsuppgifter i Dispatch Email Notice.
- Öppna Mark Sent Email och bekräfta Email =
{{ $('Ready to Email?').item.json.Email }}, Reason =High scoreoch Emailed =true. - Säkerställ att låg/medel-poäng eller ogiltiga rutter kopplas till Mark Not Emailed för att spara Reason och ställa in Emailed =
false.
Steg 6: Testa och aktivera ert arbetsflöde
Kör ett manuellt test för att validera hela flödet end-to-end innan ni slår på det.
- Klicka på Execute Workflow och lägg till en ny e-postrad i ert Google Sheet för att trigga Spreadsheet Watch Trigger.
- Verifiera att Write Validation Data skriver fält som ZB Status och Validated till arket.
- Bekräfta att Update Score Records uppdaterar Score och Scored, och att Route by Score därefter routar korrekt.
- Kontrollera att leads med hög poäng passerar Ready to Email? och skickas via Dispatch Email Notice, följt av Mark Sent Email.
- Om allt ser korrekt ut, växla arbetsflödet till Active för användning i produktion.
Felsökningstips
- Inloggningar för Google Sheets kan löpa ut eller kräva specifika behörigheter. Om det skapar fel, kontrollera panelen Credentials i n8n och bekräfta att det anslutna Google-kontot har åtkomst till det kalkylarket.
- Om du använder Wait-noder eller extern rendering varierar bearbetningstiderna. Öka väntetiden om efterföljande noder fallerar på tomma svar.
- Standardprompter i AI-noder är generiska. Lägg in er tonalitet tidigt, annars kommer du att redigera utdata för alltid.
Snabba svar
Cirka 30 minuter om dina konton och kolumner i arket är klara.
Nej. Du kopplar Google Sheets, ZeroBounce och Gmail och mappar sedan fälten en gång.
Ja. n8n har ett gratis alternativ för egen hosting och en gratis provperiod på n8n Cloud. Molnplaner börjar på 20 USD/månad för högre volym. Du behöver också räkna med ZeroBounce API-användning för validering och A.I.-poängsättning.
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 serveradministration.
Ja, och oftast är det en liten ändring. Steget ”Route by Score” styr vilka som får mejl, så du kan sänka gränsen från 9+ till 8+ om du behöver mer volym. Du kan också redigera Gmail-steget ”Dispatch Email Notice” för att använda olika mallar för olika poängintervall. En annan vanlig justering är att lägga till extra kolumner i Google Sheets (som Lead Source) och bara poängsätta vissa källor först.
Oftast är det API-nyckeln. Skapa en ny nyckel i din ZeroBounce-dashboard och uppdatera den i n8n och kör sedan ett enda testlead. Om det fortfarande fallerar, kontrollera att din ZeroBounce-plan har tillräckligt med credits och att du inte slår i rate limits genom att processa en stor batch på en gång. Kontrollera också att du skickar rätt fält från Google Sheets (en tom mejlcell kan se ut som en ”misslyckad förfrågan”).
I de flesta n8n-upplägg är hundratals leads per dag normalt, och med egen hosting kan du skala ytterligare om din server hänger med.
Ofta, ja, om du bryr dig om kontroll och att undvika dubbelsändningar. Det här flödet har flera beslutspunkter (behöver validering, giltig/ogiltig, behöver poängsättning, sedan poängnivåer) och det skriver tillbaka rika statusar till Google Sheets så att det kan hoppa över arbete nästa gång. n8n hanterar den typen av förgreningar snyggt utan att göra din automation till fem separata zaps eller scenarier. Zapier eller Make kan fortfarande fungera om din process är enklare, som ”validera och mejla”, men du betalar oftast mer när volymen växer. Prata med en automationsexpert om du vill ha en snabb rekommendation för just din stack.
När detta är live slutar ditt ark att vara en rörig lista och börjar fungera som ett kvalitetsfilter. Du får mer strukturerad outreach, färre överraskningar och en process du kan lita på även nästa vecka.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.