Din väntelista ser “full av aktivitet” ut, men du vet inte vad som faktiskt är på riktigt. Stavfel smyger sig in, bottar tar sig igenom och du slutar med att mejla adresser som studsar (vilket snabbt kan skada leveransförmågan).
Marknadschefer märker det först när lanseringsmejl underpresterar. En grundare ser det när investerare frågar efter traction-siffror. Och en byrå som kör lead magnets måste förklara varför listkvaliteten är… rörig. Den här automationen för väntelisteanmälan verifierar varje e-postadress innan den ens blir en “lead” i ditt kalkylark.
Nedan ser du exakt hur flödet bekräftar anmälningar, håller personer i en enkel verifieringsloop och loggar varje statusändring i Google Sheets så att du kan segmentera snabbare.
Så fungerar automationen
Hela n8n-flödet, från trigger till slutresultat:
n8n Workflow Template: Google Sheets + e-post: verifierade väntelistanmälningar
flowchart LR
subgraph sg0["Waitlist Form Flow"]
direction LR
n0@{ icon: "mdi:database", form: "rounded", label: "Add to Waitlist Sheet", pos: "b", h: 48 }
n1@{ icon: "mdi:swap-vertical", form: "rounded", label: "Clean and Standardize", pos: "b", h: 48 }
n2@{ icon: "mdi:message-outline", form: "rounded", label: "Send Verification Email", pos: "b", h: 48 }
n3["<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/>Validate with Verification C.."]
n4@{ icon: "mdi:swap-vertical", form: "rounded", label: "Get all Data from the Prev F..", 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/form.svg' width='40' height='40' /></div><br/>Additional Data for the Sheet"]
n6@{ icon: "mdi:swap-vertical", form: "rounded", label: "Every Step Data", pos: "b", h: 48 }
n7@{ icon: "mdi:swap-horizontal", form: "rounded", label: "is the Code correct?", pos: "b", h: 48 }
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/form.svg' width='40' height='40' /></div><br/>Let the User Reenter Code"]
n9["<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/merge.svg' width='40' height='40' /></div><br/>Merge"]
n10@{ icon: "mdi:database", form: "rounded", label: "Save Intend to List", pos: "b", h: 48 }
n11@{ icon: "mdi:database", form: "rounded", label: "Save as Verified", pos: "b", h: 48 }
n12@{ icon: "mdi:cog", form: "rounded", label: "Generate Random Verification..", pos: "b", h: 48 }
n13["<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/>Waitlist Form"]
n9 --> n2
n13 --> n1
n6 --> n10
n11 --> n5
n7 --> n11
n7 --> n8
n1 --> n12
n0 --> n9
n2 --> n3
n8 --> n4
n5 --> n6
n3 --> n4
n12 --> n0
n12 --> n9
n4 --> 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 n13 trigger
class n7 decision
class n0,n10,n11 database
classDef customIcon fill:none,stroke:none
class n3,n5,n8,n9,n13 customIcon
Problemet: Overifierade väntelisteanmälningar smutsar ner din lista
Ett väntelisteformulär ska vara den enkla delen. Någon är intresserad, skickar in sina uppgifter och du följer upp senare. I praktiken börjar listan försämras i samma stund som du publicerar formuläret. Folk skriver fel e-post, spambots bombar in inskick och du upptäcker skadan först när du skickar en kampanj och antalet studsar sticker iväg. Då fastnar du med att rensa data manuellt, försöka gissa vilka rader som är legitima och fundera på vilka “anmälningar” som aldrig var verkliga från början.
Friktionen bygger på. Det är inte ett stort haveri, utan hundra små som kostar dig tid och trovärdighet.
- Du mejlar overifierade adresser, vilket kan dra ner avsändarryktet över tid.
- Manuell städning i Google Sheets blir ett veckomoment, och det är lätt att råka ta bort fel person.
- Segmenteringen stannar av eftersom “intresserad” och “faktiskt nåbar” blandas ihop.
- Lanseringsrapporteringen blir otydlig eftersom du inte kan lita på konverteringsgrad från en komprometterad lista.
Lösningen: verifiera varje anmälan innan du räknar den
Det här flödet gör ett vanligt väntelisteformulär till ett enkelt double opt-in-verifieringssystem som körs i n8n och loggar allt till Google Sheets. Det startar när någon skickar in första steget i formuläret med namn, e-post och företag. n8n rensar och normaliserar inmatningen (så “ [email protected] ” blir något du faktiskt kan använda), skapar en verifieringstoken och lägger direkt till en ny rad i ditt Google Sheet med “Verified” satt till false. Sedan skickar det ett verifieringsmejl med koden. Prenumeranten matar in koden i formulärets andra steg och flödet kontrollerar att den matchar. Om den är fel får personen försöka igen tills det blir rätt. När den matchar uppdateras arket till Verified = TRUE och flödet samlar in ytterligare ett användbart fält: avsedd användning.
Flödet börjar med ett intake-formulär för väntelistan och går sedan vidare till token-skapande och utskick av e-post. Därefter kör det en kort verifieringsloop tills koden matchar. Till sist sparar det “verified”-statusen och personens avsedda användning i Google Sheets, vilket gör att din lista direkt går att använda för targeting och uppföljning.
Det du får: automation vs. resultat
| Vad det här flödet automatiserar | Resultat du får |
|---|---|
|
|
Exempel: så här ser det ut
Säg att du får omkring 30 väntelisteanmälningar per dag. Om ens 10 kräver manuell uppföljning på grund av stavfel eller misstänkta inskick, är det ungefär 5 minuter per styck att undersöka, rätta eller ta bort (cirka 50 minuter dagligen). Med det här flödet lägger du kanske 10 minuter på att anpassa mejltext och formulärcopy, sedan går det av sig självt: användare bekräftar i formulärets andra steg och Google Sheets uppdateras direkt. De flesta team får tillbaka nära en timme per dag under lanseringsveckan.
Det här behöver du
- n8n-instans (testa n8n Cloud gratis)
- Alternativ för self-hosting om du föredrar det (Hostinger fungerar bra)
- Google Sheets för väntelistedatabasen och statusloggning.
- E-post (Send Mail-nod) för att leverera verifieringskoder till anmälningar.
- Google Sheets OAuth-inloggningsuppgifter (hämta från Google Cloud Console).
Svårighetsnivå: Nybörjare. Du kopplar konton, mappar några fält och testar formulärflödet från start till mål.
Vill du inte sätta upp detta själv? Prata med en automationsexpert (gratis 15-minuters konsultation).
Så fungerar det
Någon går med i din väntelista. Flödet startar med n8n:s intake-formulär för väntelistan och fångar grunddata som förnamn, efternamn, e-post och företag.
Datan blir rensad och förberedd. n8n normaliserar inmatningsfälten och skapar sedan en verifieringstoken så att varje anmälan får en unik kod kopplad till just den inskickningen.
Verifieringsloopen gör grovjobbet. Flödet lägger till den första raden i Google Sheets, skickar koden via e-post och kontrollerar sedan koden som matas in i verifieringsformuläret. Om den inte matchar skickas personen tillbaka för att försöka igen, utan att du behöver röra något.
Verifierade leads berikas och loggas. När koden matchar markerar flödet raden som Verified = TRUE och samlar in fältet “Intended Use”, som sedan sparas tillbaka i samma Google Sheet.
Du kan enkelt ändra vilka fält du samlar in så att det passar din verksamhet och sedan spara svaren i nya kolumner i arket. Se den fullständiga implementationsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementation
Steg 1: konfigurera formulärtriggern
Det här arbetsflödet startar när en användare skickar in väntelisteformuläret. Konfigurera formulärfälten och svarsbeteendet i Waitlist Intake Form.
- Lägg till en Waitlist Intake Form-nod och ställ in Form Title på
Waitlist Form. - Ställ in Form Description på
Thank you for the interest in our Service! Join our waitlist to be one of the first users getting access to our service!. - I Form Fields lägger ni till Firstname, Lastname, Email (typ
email) och Company Website. - Ställ in Response Mode på
lastNodeså att det slutliga formulärsvaret returneras.
Steg 2: normalisera inkommande indata
Rensa och standardisera e-post- och webbplatsinmatningarna innan ni genererar en token.
- Lägg till Normalize Inputs och aktivera Include Other Fields.
- Ställ in tilldelningen för Email till
{{ $json.Email.trim().toLowerCase() }}. - Ställ in tilldelningen för Company Website till
=https://{{ $json['Company Website'].toLowerCase().trim().trim('/').replace('https://','').replace('http://','') }}.
Steg 3: generera verifieringstoken och dela upp flödet
Skapa en verifieringskod och skicka datan vidare i två parallella grenar för lagring och utskick av e-post.
- Lägg till Create Verification Token och ställ in Action på
generate, Encoding Type påhex, String Length på6och Data Property Name påcode. - Koppla Create Verification Token till både Append Waitlist Entry och Merge Branches.
- Observera att Create Verification Token skickar utdata parallellt till både Append Waitlist Entry och Merge Branches.
Steg 4: anslut Google Sheets för lagring av väntelistan
Lagra den initiala väntelisteanmälan och uppdatera senare verifieringsstatus och avsedd användning.
- I Append Waitlist Entry ställer ni in Operation på
appendOrUpdateoch mappar kolumner: Email{{ $json.Email }}, Company{{ $json['Company Website'] }}, Lastname{{ $json.Lastname }}, Firstname{{ $json.Firstname }}, Verification-Code{{ $json.code }}. - Ställ in Document ID på
[YOUR_ID]och Sheet Name påSheet1(gid=0). - Inloggningsuppgifter krävs: Anslut era googleSheetsOAuth2Api-inloggningsuppgifter till Append Waitlist Entry.
- I Mark as Verified ställer ni in Operation på
appendOrUpdate, mappar Email till{{ $json.Email }}och Verified tilltrue, och använder samma kalkylark. - Inloggningsuppgifter krävs: Anslut era googleSheetsOAuth2Api-inloggningsuppgifter till Mark as Verified.
- I Record Intended Use mappar ni Email till
{{ $json.Email }}och Intended Use till{{ $json['Use Case'] }}, och använder samma kalkylark. - Inloggningsuppgifter krävs: Anslut era googleSheetsOAuth2Api-inloggningsuppgifter till Record Intended Use.
Verification-Code, Verified och Intended Use, annars misslyckas uppdateringarna.Steg 5: skicka verifieringsmejlet och fånga koden
Skicka verifieringsmejlet och samla in koden via formulär, och slå sedan ihop data för validering.
- I Merge Branches ställer ni in Mode på
chooseBranchoch Use Data Of Input på2. - Konfigurera Dispatch Verification Email med To Email
{{ $json.Email }}, SubjectYour Waitlist Verification Code, From Email[YOUR_EMAIL]och HTML-innehållet från arbetsflödet. - Inloggningsuppgifter krävs: Anslut era smtp-inloggningsuppgifter till Dispatch Verification Email.
- Konfigurera Verification Code Form med Form Title
Validate your Email, Button LabelVerifyoch ett obligatoriskt fält för Verification Code. - I Combine Form Payloads ställer ni in Mode på
rawoch JSON Output på{{ $("Create Verification Token").item.json }}, med Include Other Fields aktiverat.
Steg 6: validera koden och samla in avsedd användning
Kontrollera om verifieringskoden matchar, be sedan om användarens avsedda användning och registrera den.
- I Verify Code Match ställer ni in villkoret så att Left Value
{{ $json['Verification Code'] }}jämförs med Right Value{{ $json.code }}. - Koppla true-utgången från Verify Code Match till Mark as Verified och false-utgången till Retry Code Entry.
- Konfigurera Retry Code Entry med Form Title
Code was not validoch ett obligatoriskt fält för Verification Code, och koppla det sedan tillbaka till Combine Form Payloads. - Konfigurera Collect Intended Use med Form Title
Intended Use, Button LabelSubmitoch ett Use Case-fält av typen textarea. - I Consolidate Current Data ställer ni in Mode på
rawoch JSON Output på{{ $("Combine Form Payloads").item.json }}.
Steg 7: testa och aktivera ert arbetsflöde
Verifiera att formulärinskick, e-postleverans, kodvalidering och uppdateringar i kalkylarket fungerar hela vägen.
- Klicka på Execute Workflow och skicka in Waitlist Intake Form med en testadress.
- Bekräfta att en rad läggs till i Google Sheets av Append Waitlist Entry och att ett mejl skickas av Dispatch Verification Email.
- Skicka in koden i Verification Code Form och verifiera att Verify Code Match routar till Mark as Verified.
- Slutför Collect Intended Use och verifiera att Record Intended Use uppdaterar kalkylarket med värdet
Intended Use. - När allt fungerar, slå på arbetsflödet till Active för produktion.
Vanliga fallgropar
- Google Sheets-inloggningsuppgifter kan löpa ut eller kräva specifika behörigheter. Om det slutar fungera, börja med att kontrollera panelen Credentials i n8n och dina OAuth-samtyckesinställningar i Google Cloud.
- Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om efterföljande noder fallerar på grund av tomma svar.
- Standardprompter i AI-noder är generiska. Lägg in er tonalitet tidigt, annars kommer du redigera utdata i all evighet.
Vanliga frågor
Cirka 30 minuter om dina Google Sheets- och e-postkonton är klara.
Nej. Du mappar mest formulärfält till Google Sheets och klistrar in din mejltext.
Ja. n8n har ett gratis self-hosted-alternativ 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 dina kostnader för e-postutskick (oftast småbelopp) om du använder en betald SMTP-leverantör.
Två alternativ: n8n Cloud (hanterat, enklast att komma igång) eller self-hosting på en VPS. För self-hosting är Hostinger VPS prisvärt och kör n8n stabilt. Self-hosting ger dig obegränsade körningar men kräver grundläggande serverhantering.
Ja, och det bör du. Lägg till fält i intake-formuläret eller i formuläret “Collect Intended Use” och uppdatera sedan mappingarna i “Normalize Inputs” och “Record Intended Use” så att värdena hamnar i nya kolumner i Google Sheets. Vanliga justeringar är att samla in roll, teamstorlek och vilken funktion de bryr sig mest om. Du kan också ändra formuleringen i verifieringsmejlet i “Dispatch Verification Email” så att den matchar er tonalitet.
Oftast beror det på att OAuth-åtkomst har löpt ut eller att fel Google-konto är kopplat i n8n. Anslut om Google Sheets-credentialen och bekräfta sedan att sheet-ID och fliknamn matchar det dina noder pekar på. Kontrollera också delningsbehörigheter på själva kalkylarket, eftersom ett ark som “fungerar för dig” i webbläsaren ändå kan vara blockerat för den OAuth-identitet du kopplade.
För de flesta väntelistor: gott och väl. I n8n Cloud begränsas du av månatliga körningar i din plan, medan self-hosting inte har något tak för antal körningar (det beror på din server). Varje anmälan triggar normalt flera körningar på grund av verifieringsloopen, så om du räknar med tusentals per dag behöver du dimensionera kapaciteten därefter.
Ofta, ja, eftersom verifieringsloopen (försök igen tills koden matchar) är mycket enklare att modellera i n8n än i många “linjära” automationsverktyg. Du får också förgreningar utan att behöva oroa dig för task-prissättning varje gång någon skriver fel kod. Zapier eller Make kan fortfarande fungera om du förenklar flödet till en bekräftelselänk med ett klick, men det är en annan design. Om du är osäker, prata med en automationsexpert så kvalitetssäkrar vi bästa upplägg för din volym och din stack.
En verifierad väntelista är en fördel som växer över tid, helt ärligt. Sätt upp det här en gång, håll ditt Google Sheet strukturerat och lägg energin på lanseringen istället för efterstädning.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.