Behöver ert företag hjälp med att implementera AI? Kontakta oss och få prisoffert här →
AI Skolan
januari 22, 2026

Supabase + Mailgun: kalla mejl med uppföljning

Rickard Andersson Partner, Nodenordic.se

Din kalla outreach börjar starkt. Sedan halkar uppföljningen efter, en lead svarar men blir ändå påmind igen, eller så lever din ”skickad”-status på tre ställen som ingen litar på. Det är inte lathet. Det är verkligheten när man försöker jonglera listor, timing och personalisering för hand.

Den här Supabase Mailgun-automationen träffar SDR:er först, men byråägare och tillväxtfokuserade grundare känner av den också. Du får konsekventa 3-stegssekvenser, uppföljningar som inte glöms bort och spårning som faktiskt är kopplad till din källa till sanning (din databas) – inte någons flik i ett kalkylark.

Nedan ser du exakt hur arbetsflödet körs i n8n, vad det automatiserar, vilka resultat du kan förvänta dig och de få ställen där team brukar snubbla när de lanserar det.

Så fungerar den här automatiseringen

Hela n8n-arbetsflödet, från trigger till slutligt resultat:

n8n Workflow Template: Supabase + Mailgun: kalla mejl med uppföljning

Problemet: kall outreach fallerar vid uppföljningen

Att skicka ett kallt mejl är enkelt. Att driva en pålitlig sekvens är där det blir rörigt. Du måste hålla koll på vem som fick mejl 1, vem som ska få mejl 2 i dag (i rätt tidszon), vem som svarade och vem som ska pausas så att du inte ser slarvig ut. Och om du dessutom försöker personalisera i skala slutar det med att du kopierar företagsnoteringar in i prompts, justerar HTML och hoppas att fältet ”senast kontaktad” stämmer. Det är många små steg. De blir snabbt till timmar varje vecka – och massor av helt onödiga misstag.

Friktionen byggs på. Här är var det oftast faller isär.

  • Uppföljningar sker sent (eller inte alls) eftersom de hänger på att någon kommer ihåg att kolla en lista.
  • Team råkar dubbel-skicka eller följa upp efter ett svar eftersom ”statusen” inte är kopplad till verktyget som skickar.
  • Personaliseringen blir ytlig eftersom research av varje företag tar cirka 10 minuter per lead.
  • Leveransbarheten blir sämre när du skickar för snabbt eller alltid från samma adress.

Lösningen: AI-personaliserade sekvenser som skickas och spåras från Supabase

Det här n8n-arbetsflödet gör Supabase till kontrollcentret för kall outreach, med Mailgun som sköter leveransen och AI som tar den svåra delen: att skriva mejl som låter som att du faktiskt gjort hemläxan. Det startar enligt ett schema, hämtar leads från Supabase och kontrollerar vilket steg varje lead är i (första kontakt, uppföljning 1, uppföljning 2 och så vidare). För varje kvalificerad lead researchar det företagskontext, genererar ett skräddarsytt meddelande (inklusive korrekt formaterad HTML och flerspråksalternativ) och skickar via Mailgun med strypta batchar och tidsstyrda väntetider. Efter varje utskick uppdaterar det Supabase med sändhistorik och nästa steg så att din spårning förblir strukturerad. Det stöder även avsändarrotation, grundläggande tillförlitlighetsskydd och till och med Telegram-input via röst eller text när du snabbt vill mata in ny leadinformation.

Arbetsflödet väcks via schemalagda triggers och hämtar och sorterar sedan leads. Därefter utvärderar det timing (inklusive tidszonslogik), routar varje post efter sekvenssteg och skickar rätt mejl via Mailgun. Till sist skriver det tillbaka utfallet till Supabase så att nästa körning vet exakt vad som ska göras.

Det du får: automatisering vs. resultat

Exempel: så här ser det ut

Säg att du lägger in 50 nya prospekt per vecka i Supabase. Att manuellt köra en 3-stegssekvens innebär ofta cirka 5 minuter per lead och steg (skriva utkast, kontrollera historik, schemalägga), vilket blir ungefär 12 timmar i veckan när du räknar in uppföljningar och statusuppdateringar. Med det här arbetsflödet lägger du kanske 30 minuter i början på att granska prompt och mall, och sedan skickar och loggar varje schemalagd körning automatiskt medan du gör annat. De flesta team landar i outreach som rullar dagligen – utan daglig barnpassning.

Det här behöver du

  • n8n-instans (prova n8n Cloud gratis)
  • Alternativ för egen hosting om du föredrar det (Hostinger fungerar bra)
  • Supabase för att lagra leads, steg och historik.
  • Mailgun för att skicka mejl med bra leveransbarhet.
  • OpenAI- eller Anthropic-API-nyckel (hämta den i din leverantörs dashboard).

Kunskapsnivå: Medel. Du kopplar credentials, verifierar tabellfält i Supabase och justerar prompts och schemainställningar.

Vill du inte sätta upp detta själv? Prata med en automationsexpert (gratis 15-minuters konsultation).

Så fungerar det

Schemalagda körningar hämtar nästa uppsättning leads. Flera schematriggers startar arbetsflödet, och Supabase-frågor hämtar poster som matchar dina regler (nya prospekt, redo för uppföljning, inte pausade).

Tidpunkt och behörighet utvärderas. Arbetsflödet räknar ut tidszon, kontrollerar villkor (som steg och senaste sändtid), sorterar poster och begränsar volym så att du inte råkar skicka för många i ett och samma tidsfönster.

AI genererar meddelanden som passar leaden. Ett research-steg samlar in företags- och rollkontext, och sedan skriver en agent en sekvens med flera mejl. Resultatet parsas till strukturerade fält så att det kan slås ihop i konsekventa HTML-mallar utan att formateringen går sönder.

Mailgun skickar, Supabase loggar sanningen. Mejlen går ut i batchar med väntetider mellan cykler, och arbetsflödet uppdaterar direkt Supabase med sändtidsstämplar, stegändringar och historik så att nästa körning tar vid utan strul. Om du matar in leads via Telegram (röst eller text) routas och bearbetas den inputen innan leaden går in i samma pipeline.

Du kan enkelt justera schemaläggningsfönster för att matcha din marknad efter dina behov. Se hela implementationsguiden nedan för anpassningsalternativ.

Steg-för-steg-guide för implementering

Steg 1: konfigurera den schemalagda triggern

Det här arbetsflödet använder flera schemalagda triggers för att hämta outreach-kandidater och tidsfönster.

  1. Öppna Scheduled Trigger A och ställ in schemat som ska starta huvudcykeln för lead-hämtning.
  2. Öppna Scheduled Trigger B och ställ in schemat för den sekundära pipelinen för lead-utvärdering.
  3. Öppna Scheduled Trigger C och Scheduled Trigger D för att definiera tidsfönstren för utvärdering av sändtid (dessa leder in i Supabase Fetch B och Supabase Fetch C).

Håll dessa scheman förskjutna för att undvika överlappande lead-batcher som kan överskrida sändningsgränser.

Steg 2: anslut Supabase-datakällor

Supabase driver leaddatabasen och statusuppdateringar genom hela arbetsflödet.

  1. Öppna Supabase Fetch A, Supabase Fetch B, Supabase Fetch C och Retrieve Multiple Rows för att konfigurera tabell- och frågedetaljer för varje dataset.
  2. Konfigurera Leads Table Fetch för att hämta leadposter som används för tidszon och avsändarroutning.
  3. Anslut uppdateringar i Supabase Update A, Supabase Update B, Supabase Update C, Supabase Update D, Supabase Update E och Supabase Update F så att varje batch skriver statusändringar tillbaka till Supabase.
  4. Ställ in Insert New Leads för att lägga in poster som identifieras av scraping-pipelinen.
  5. Credential Required: Anslut era Supabase-inloggningsuppgifter på alla Supabase-noder (12+ noder hanterar fetch-, update- och insert-åtgärder).

⚠️ Vanlig fallgrop: Saknade Supabase-inloggningsuppgifter kommer att orsaka tysta fel längre ned i flödet eftersom många noder förlitar sig på hämtad data.

Steg 3: ställ in logik för lead-filtrering och routning

Leads filtreras, sorteras och förbereds innan e-post skickas.

  1. Granska Check Condition A, Check Condition B, Check Condition C och Check Condition D för att bekräfta förgreningsregler och pass/stopp-logik.
  2. Bekräfta ordningen i Sort Records A, Sort Records B, Sort Records C och Sort Records D så att prioriterade leads behandlas först.
  3. Tillämpa begränsningar i Apply Record Cap, Apply Record Cap B, Apply Record Cap C, Apply Record Cap D och Apply Record Cap E för att undvika att skicka för många e-postmeddelanden per cykel.
  4. Ställ in stegroutning i Route by Stage, Route by Stage B och Route by Stage C för att skicka varje lead till rätt batch-spår.
  5. Observera att Placeholder Step, Placeholder Step B, Placeholder Step C och Placeholder Step D är no-op-noder som behålls för felsökning och framtida utbyggnad.

Apply Record Cap skickar utdata parallellt till både Combine Streams och Research Company Info—detta är avsiktligt för att berika leads samtidigt som den utgående sekvensen förbereds.

Steg 4: konfigurera AI-research och e-postkomposition

AI-noder genererar research-insikter och skapar outreach-sekvensen.

  1. Öppna Research Company Info och General Analysis för att definiera prompts och indata som analyserar lead-företag.
  2. Öppna Compose Email Sequence för att definiera agentprompten för fler-stegs outreach-meddelanden.
  3. Säkerställ att OpenAI Chat Engine är ansluten som språkmodell för Compose Email Sequence och lägg till inloggningsuppgifter där.
  4. Använd Transform Script A och Combine Streams för att linjera AI-utdata med leaddata innan tidszonslogiken.
  5. Credential Required: Anslut era OpenAI-inloggningsuppgifter på Research Company Info, General Analysis, Compose Email Sequence, OpenAI Chat Engine och Transcribe Audio.

Structured Parser A och Structured Parser B är AI-undernoder. Lägg till inloggningsuppgifter på föräldranoderna (till exempel Compose Email Sequence eller Web Scraper Agent), inte direkt på parser-noderna.

Steg 5: konfigurera web scraping och lead-berikning

Den här delen scrapar och validerar nya lead-e-postadresser med agenter, Apify och Postgres.

  1. Konfigurera Web Scraper Agent med dess prompt och indatafält så att den kan tolka textpayloads från Set Text Payload och Transcribe Audio.
  2. Web Scraper Agent skickar utdata parallellt till både Build Query Payload och Fetch Scraped Emails, vilket möjliggör samtidig byggning av frågor och hämtning av befintliga e-postadresser.
  3. Konfigurera Build Query PayloadBuild Request URLRun Apify Actor för att skapa scraping-förfrågningar.
  4. Bekräfta att Extract Details, Filter Verified Emails och Filter New Leads korrekt extraherar och validerar data innan insättning.
  5. Credential Required: Anslut era Apify-inloggningsuppgifter i Run Apify Actor.
  6. Credential Required: Anslut era Postgres-inloggningsuppgifter i Fetch Scraped Emails.

Använd Already Processed för att snabbt testa jämförelselogik genom att routa dubbletter till en no-op-gren.

Steg 6: konfigurera Telegram-intag och notiser

Telegram hanterar inkommande röst-/textprompts och utgående bekräftelsenotiser.

  1. Konfigurera Telegram Incoming för att lyssna på inkommande meddelanden och anslut den till Route Voice or Text.
  2. Ställ in Route Voice or Text för att skicka ljud till Download Attachment och text till Set Text Payload.
  3. Anslut Download Attachment till Transcribe Audio så att röstprompts blir textindata för Web Scraper Agent.
  4. Konfigurera Compose Telegram NoticeApply Record Cap ESend Telegram Confirm för färdig-notiser.
  5. Credential Required: Anslut era Telegram-inloggningsuppgifter på Telegram Incoming, Download Attachment och Send Telegram Confirm.

⚠️ Vanlig fallgrop: Om Telegram-inloggningsuppgifter saknas kommer scraping-pipelinen aldrig att starta när den triggas av chattmeddelanden.

Steg 7: konfigurera tidszon och val av avsändare

Tidszonslogik och val av avsändare synkar outreach-timing med mottagarregioner.

  1. Granska Compute Timezone och Determine Sender Address för att säkerställa att koden matchar era datafält.
  2. Bekräfta att Determine Sender Address skickar utdata korrekt till Leads Table Fetch så att avsändardetaljer tillämpas per lead.
  3. Använd Evaluate Send Time A och Evaluate Send Time B för att beräkna sändningsfönster per lead innan Check Condition C och Check Condition D.

Håll tidszonskonverteringar konsekventa i Compute Timezone för att undvika att skicka utanför lokala kontorstider.

Steg 8: konfigurera e-postutskick och sekvensering

E-post skickas genom flera steg med fördröjningar och batch-iteration.

  1. Anslut ert Mailgun-konto i Dispatch Email A, Dispatch Email B, Dispatch Email C, Dispatch Email D, Dispatch Email E och Dispatch Email F.
  2. Säkerställ att varje e-postutskicksnod skickar till sin parade fördröjning: till exempel Dispatch Email BDelay Cycle A och Dispatch Email ADelay Cycle B.
  3. Konfigurera Delay Cycle A till Delay Cycle F så att de matchar er önskade uppföljningskadens.
  4. Verifiera batch-routning från Batch Iterate A till Batch Iterate F till respektive Supabase-uppdateringar och e-postutskick.
  5. Credential Required: Anslut era Mailgun-inloggningsuppgifter på alla Mailgun-noder (6 noder hanterar hela sekvensen).

⚠️ Vanlig fallgrop: Om någon fördröjningsnod är felkonfigurerad kommer batcher att stanna och senare e-postmeddelanden skickas aldrig.

Steg 9: konfigurera AI-minne och verktyg för parsing

AI-verktyg förbättrar scraping- och genereringspipelines med minne och strukturerade utdata.

  1. Granska Memory Buffer för att säkerställa att den är kopplad till Web Scraper Agent via AI-minneskopplingen.
  2. Aktivera Structured Parser B för scraping-pipelinen om ni vill ha strukturerad utdata; den ansluter till Web Scraper Agent.
  3. Observera att Structured Parser A är inaktiverad; aktivera den endast om er pipeline för e-postkomposition kräver strukturerad parsing.
  4. Säkerställ att OpenAI Chat Engine B är ansluten till Web Scraper Agent som dess språkmodell.
  5. Credential Required: Lägg till OpenAI-inloggningsuppgifter i OpenAI Chat Engine B (AI-undernoder som Memory Buffer och parsers använder föräldranodens inloggningsuppgifter).

Steg 10: testa och aktivera ert arbetsflöde

Validera varje pipeline-spår innan ni slår på systemet.

  1. Kör Scheduled Trigger A manuellt och bekräfta att data flödar från Supabase Fetch A till Dispatch Email-noder med lämpliga fördröjningar.
  2. Trigga Telegram Incoming med en testad röstnotis och bekräfta att den går igenom Download AttachmentTranscribe AudioWeb Scraper Agent.
  3. Verifiera att nya leads passerar Filter Verified Emails och Filter New Leads och sedan hamnar i Insert New Leads med en bekräftelse skickad av Send Telegram Confirm.
  4. En lyckad körning ska visa uppdateringar i Supabase Update A till Supabase Update F, och varje e-postnod ska returnera ett lyckat svar.
  5. När ni är nöjda, växla arbetsflödet till Active för att aktivera schemalagda produktionskörningar.
🔒

Lås upp fullständig steg-för-steg-guide

Få den kompletta implementeringsguiden + nedladdningsbar mall

Vanliga fallgropar

  • Mailgun-credentials kan gå ut eller kräva specifika behörigheter. Om det strular, kontrollera först status för din Mailgun API-nyckel och verifiering av din sänddomän.
  • Om du använder Wait-noder eller extern bearbetning varierar processtiderna. Öka väntetiden om nedströmsnoder fallerar på tomma svar.
  • Standardprompter i AI-noder är generiska. Lägg in din varumärkesröst tidigt, annars kommer du redigera output för alltid.

Vanliga frågor

Hur lång tid tar det att sätta upp den här Supabase Mailgun-automationen?

Räkna med cirka 60 minuter om dina Supabase-tabeller och din Mailgun-domän är klara.

Behöver jag kunna koda för att automatisera Supabase Mailgun automation?

Nej. Du kommer främst koppla konton och redigera några prompts och schemainställningar.

Är n8n gratis att använda för det här Supabase Mailgun automation-arbetsflödet?

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 kostnader för OpenAI- eller Anthropic-API samt Mailguns sändkostnader.

Var kan jag hosta n8n för att köra den här automatiseringen?

Två alternativ: n8n Cloud (managed, 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.

Kan jag anpassa det här Supabase Mailgun automation-arbetsflödet för olika sänddagar och språk?

Ja, och det är en av de bästa anledningarna att använda den här mallen. Du justerar de schemalagda triggers och logiken för ”utvärdera sändtid” så att den matchar dina föredragna dagar och tider, och uppdaterar sedan AI-prompten som används för att skriva sekvensen för ditt språk och din ton. Om du föredrar en annan researchkälla kan du byta ut skrapning/research-delen (HTTP request/agent-steget) samtidigt som du behåller Supabase-routning per steg och Mailgun-utskick intakt. Vanliga justeringar är att ändra antal uppföljningar, sätta andra fördröjningar och lägga till en ”mejla inte”-regel för vissa segment.

Varför misslyckas min Mailgun-anslutning i det här arbetsflödet?

Oftast är det en API-nyckel- eller domänfråga. Skapa om din Mailgun API-nyckel, bekräfta att din sänddomän är verifierad och säkerställ att den ”from”-adress arbetsflödet väljer är tillåten på ditt konto. Om du har aktiverat avsändarrotation, bekräfta även att varje avsändaridentitet finns i Mailgun. Rate limits kan också dyka upp när du försöker trycka igenom en stor batch på en gång.

Hur många leads kan den här Supabase Mailgun-automationen hantera?

Väldigt många, så länge du kör i batchar. På n8n Cloud Starter begränsas du av antal körningar per månad, medan egen hosting mest beror på din server och hur aggressivt du skickar via Mailgun.

Är den här Supabase Mailgun-automationen bättre än att använda Zapier eller Make?

Ofta, ja – eftersom sekvenser kräver förgreningar, timing och tillståndsspårning. n8n gör det praktiskt att använda posttak, batchar, väntetider och logik för ”routa efter steg” utan att betala extra varje gång flödet blir mer komplext. Det låter dig också hålla datauppdateringar tätt kopplade till sändaktionen, vilket minskar glapp där något är ”skickat men inte loggat”. Zapier eller Make kan fortfarande fungera för enklare outreach, som ett mejl per trigger med en enda uppföljning. Om din sekvenslogik redan är lite av ett monster kommer det här arbetsflödet kännas mer stabilt. Prata med en automationsexpert om du är osäker på vad som passar.

När det här väl rullar slutar uppföljningar vara ett dagligt måste och blir ett system. Du kommer märka lugnet direkt, helt ärligt.

Kontakta oss

Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.

×

Använd mall

Få direkt tillgång till denna n8n-arbetsflödes JSON-fil

Få prisoffert redan idag!
Få prisoffert redan idag!

Berätta vad ni behöver hjälp med så hör vi av oss inom en arbetsdag!

Få prisoffert redan idag!
Få prisoffert redan idag!

Berätta vad ni behöver hjälp med så hör vi av oss inom en arbetsdag!

Launch login modal Launch register modal