Att kopiera resultat från Google Maps till ett kalkylark känns okej för de första 10 leads. Sedan når du 50. Plötsligt jonglerar du flikar, tappar bort vilka listningar du redan har fångat, och missar fortfarande det enda fältet du faktiskt behöver: en användbar e-postadress.
Det här upplägget för Apify Airtable leads träffar först marknadsförare som kör lokala kampanjer, men säljteam och ägare till små lokala företag känner också igen det. Du lägger lätt runt 2 timmar på “research” som egentligen bara är datainmatning. Och det är ärligt talat dränerande.
Det här arbetsflödet hämtar Google Maps-leads med Apify, rensar och strukturerar fälten, besöker varje webbplats för att hitta en e-postadress med GPT och sparar allt i Airtable så att du kan börja med outreach utan allt rörigt förarbete.
Så fungerar den här automatiseringen
Hela n8n-arbetsflödet, från trigger till slutresultat:
n8n Workflow Template: Google Maps till Airtable, leads via Apify
flowchart LR
subgraph sg0["Manual Workflow Execution Flow"]
direction LR
n0["<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/>Fetch Business Data from Goo.."]
n1@{ icon: "mdi:swap-vertical", form: "rounded", label: "Clean Google Maps Data", pos: "b", h: 48 }
n2@{ icon: "mdi:play-circle", form: "rounded", label: "Manual Workflow Execution", pos: "b", h: 48 }
n3@{ icon: "mdi:swap-vertical", form: "rounded", label: "Iterate Through Each Busines..", pos: "b", h: 48 }
n4@{ icon: "mdi:swap-vertical", form: "rounded", label: "Extract Only Website URLs", 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/>Fetch Raw HTML Content from .."]
n6@{ icon: "mdi:robot", form: "rounded", label: "Extract Business Email from ..", 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/airtable.svg' width='40' height='40' /></div><br/>Save Cleaned Lead Data into .."]
n1 --> n3
n4 --> n5
n2 --> n0
n3 --> n4
n0 --> n1
n5 --> n6
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 n2 trigger
class n6 ai
class n7 database
class n0,n5 api
classDef customIcon fill:none,stroke:none
class n0,n5,n7 customIcon
Problemet: Google Maps-leads är enkla att hitta, svåra att använda
Google Maps är fullt av prospekt, men datan är klurig att göra operativ. Du samlar ett företagsnamn, tar ett telefonnummer, kanske kopierar webbplatsen, och sedan måste du fortfarande jaga en e-postadress. En i taget. Under tiden blir din “leadlista” inkonsekvent: olika adressformat, saknade webbplatser, dubbla poster och anteckningar utspridda över flikar. Och det värsta är att du inte kan lita på listan, så outreach saktar ner eftersom du hela tiden dubbelkollar allt.
Det drar snabbt iväg. Här är var det faller isär.
- Manuell copy-paste mellan Google Maps, webbplatser och Airtable äter upp en eftermiddag för en lista på 50.
- E-postjakt blir en webbläsarskattjakt, och du landar ändå ofta i generiska inkorgar eller ingenting alls.
- Adress- och telefonformatering varierar mellan listningar, vilket gör filtrering och segmentering smärtsamt senare.
- Utan en repeterbar process kan du inte uppdatera leads varje vecka, så listan blir inaktuell.
Lösningen: skrapa, rensa, extrahera e-post och spara i Airtable
Det här arbetsflödet gör Google Maps till en stabil pipeline av strukturerade leads. Du börjar med att köra Apifys Google Maps Extractor med ett nyckelord och en plats (till exempel “fastighetsmäklare” i Paris) och ett målantal (till exempel 50). n8n hämtar resultatet via en HTTP-förfrågan och standardiserar det direkt till exakt de fält du faktiskt vill jobba med: företagsnamn, adress, telefon, webbplats och Maps-URL. Sedan loopar det igenom varje lead och besöker webbplatsen automatiskt, och laddar ner rått HTML-innehåll i bakgrunden. Till sist skannar GPT innehållet och returnerar den mest relevanta kontaktadressen den kan hitta, eller “Null” om ingen finns. Allt hamnar i Airtable som felfria rader som du kan sortera, tagga och använda för outreach.
Arbetsflödet startar med en manuell trigger, så att du kan testa säkert och köra det när du vill. Apify returnerar leaddata, n8n strukturerar och rensar den, sedan kontrollerar den varje webbplats och ber GPT extrahera en användbar e-postadress. Airtable blir din organiserade lista, klar att jobba med.
Det här får du: automatisering vs. resultat
| Det här automatiserar arbetsflödet | Resultat du får |
|---|---|
|
|
Exempel: så här ser det ut i praktiken
Säg att du behöver 50 leads för “terapeuter i Austin”. Manuellt kanske du lägger cirka 2 minuter per listning på att kopiera namn, telefon, webbplats och URL (runt 100 minuter), plus ytterligare en eller två minuter per webbplats för att leta e-post (ytterligare 60 till 90 minuter). Säg ungefär 3 timmar. Med det här arbetsflödet kör du Apify en gång, låter n8n loopa igenom webbplatserna, och din enda “hands-on”-tid är uppsättningen och en snabb rimlighetskontroll i Airtable. De flesta team får samma lista på klart under en timme i total genomloppstid, med kanske 10 minuters faktiskt arbete.
Det här behöver du
- n8n-instans (prova n8n Cloud gratis)
- Självhostat alternativ om du föredrar det (Hostinger funkar bra)
- Apify-konto för att köra Google Maps Extractor-aktorn.
- Airtable för att lagra leads i en sökbar bas.
- OpenAI API-nyckel (hämta den i din OpenAI API-dashboard)
Svårighetsnivå: Medel. Du kommer att klistra in en API-endpoint, mappa några fält och testköra med små batchar först.
Vill du inte sätta upp det här själv? Prata med en automationsexpert (gratis 15-minuters konsultation).
Så fungerar det
Manuell starttrigger. Du klickar på “Execute workflow” i n8n när du vill ha en ny batch Google Maps-leads. Det är särskilt bra i början eftersom du kan validera outputen innan du kör det rutinmässigt.
Lead-skrapning via Apify. n8n skickar en POST-förfrågan till Apifys Google Maps Extractor-endpoint med ditt nyckelord, plats och antal resultat. Apify returnerar strukturerad listningsdata, vilket betyder att du slipper skrapa sidor själv.
Rensning och batchning. Arbetsflödet behåller bara fälten du bryr dig om (namn, adress, webbplats, telefon, URL) och bearbetar leads i batchar (till exempel 20 åt gången) så att du inte överbelastar API:er och blir strypt.
E-postextraktion och lagring. För varje lead laddar n8n ner webbplatsens HTML och ber OpenAI-modellen att bara skriva ut bästa e-postadressen eller “Null”. Sista steget skapar en post i Airtable med alla mappade fält redo för filtrering och outreach.
Du kan enkelt ändra Apifys sökparametrar för att rikta in dig på en ny nisch eller stad efter behov. Se hela implementationsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementering
Steg 1: Konfigurera manuell trigger
Starta arbetsflödet manuellt så att ni kan validera varje steg innan ni automatiserar eller schemalägger det.
- Lägg till och behåll Manual Launch Trigger som startnod.
- Anslut Manual Launch Trigger till Retrieve Maps Leads via Apify för att matcha körflödet.
Steg 2: Anslut Apify och standardisera lead-poster
Hämta Google Maps-leads från Apify och normalisera svars-fälten för vidare bearbetning.
- Öppna Retrieve Maps Leads via Apify och ställ in Method på
POST. - Ställ in URL på
URL APIFYoch Send Body påtrue. - Ställ in Specify Body på
jsonoch klistra in JSON-payloaden exakt som den visas i noden, inklusive"locationQuery": "Paris, France"och"searchStringsArray": ["centre de formation"]. - I Standardize Map Records mappar ni fälten med de befintliga uttrycken, till exempel Nom du centre de formation →
{{ $json.title }}och Site internet →{{ $json.website }}. - Anslut Retrieve Maps Leads via Apify → Standardize Map Records → Batch Process Contacts för att hålla körordningen konsekvent.
Steg 3: Batcha, isolera webbplatser och ladda ner HTML
Bearbeta leads i hanterbara batchar, isolera webbplats-URL:er och hämta webbplatsens HTML för e-postextraktion.
- I Batch Process Contacts ställer ni in Batch Size på
10för att kontrollera belastningen på efterföljande noder. - Anslut den andra utgången från Batch Process Contacts till Isolate Website Links (som i arbetsflödet).
- I Isolate Website Links ställer ni in Site internet på
{{ $json['Site internet'] }}. - I Download Site HTML ställer ni in URL på
{{ $json['Site internet'] }}för att hämta HTML från varje webbplats. - Säkerställ att flödet är Isolate Website Links → Download Site HTML → AI Email Extraction.
Steg 4: Sätt upp AI-e-postextraktion
Använd OpenAI-noden för att extrahera en enda auktoritativ e-postadress från den nedladdade HTML:en.
- Öppna AI Email Extraction och bekräfta att modellen är satt till
gpt-4.1-mini. - Behåll prompt-innehållet exakt som det är konfigurerat, inklusive den tillagda HTML-variabeln
{{ $json.data }}. - Inloggningsuppgifter krävs: Anslut era openAiApi-inloggningsuppgifter i AI Email Extraction.
Steg 5: Konfigurera utdata till Airtable
Lagra de standardiserade lead-uppgifterna och den extraherade e-posten i Airtable.
- Öppna Store Leads in Airtable och ställ in Operation på
create. - Välj er Airtable Base och Table (nuvarande konfigurerade platshållare:
[YOUR_ID]). - Mappa kolumnerna med de angivna uttrycken, inklusive Email →
{{ $json.message.content }}och URL →{{ $('Standardize Map Records').item.json.URL }}. - Inloggningsuppgifter krävs: Anslut era airtableTokenApi-inloggningsuppgifter i Store Leads in Airtable.
Steg 6: Testa och aktivera ert arbetsflöde
Kör ett kontrollerat test för att verifiera utdata från varje nod och aktivera sedan för produktion.
- Klicka på Execute Workflow från Manual Launch Trigger och följ hur data flödar genom Retrieve Maps Leads via Apify, Standardize Map Records och Batch Process Contacts.
- Bekräfta att Download Site HTML returnerar HTML-innehåll i
$json.dataoch att AI Email Extraction ger ut en enda e-postadress ellerNull. - Verifiera att nya poster dyker upp i Airtable med Title, Street, Website, Phone Number, Email och URL ifyllda som förväntat.
- När allt är validerat, växla arbetsflödet till Active för produktionsanvändning.
Vanliga fallgropar
- Apify-inloggningar kan löpa ut eller kräva specifika behörigheter. Om det skapar fel, kontrollera först din Apify-token och behörigheter för actor-körningar i Apify-konsolen.
- Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om noder längre fram fallerar på tomma svar.
- Standardprompter i AI-noder är generiska. Lägg in er tonalitet tidigt, annars kommer du att sitta och redigera utdata för alltid.
Vanliga frågor
Cirka 30–60 minuter om dina Apify-, Airtable- och OpenAI-konton är klara.
Nej. Du kommer mest att klistra in en Apify-endpoint och mappa Airtable-fält i n8n.
Ja. n8n har ett gratis självhostat 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 OpenAI API-kostnader (oftast några cent per batch, beroende på hur mycket HTML du skickar).
Två alternativ: n8n Cloud (hanterat, enklast uppsättning) eller självhosting på en VPS. För självhosting är Hostinger VPS prisvärd och hanterar n8n bra. Självhosting ger dig obegränsade körningar men kräver grundläggande serverhantering.
Ja, och det är hela poängen. Du ändrar nyckelordet och platsen du skickar till Apify i HTTP Request-noden “Retrieve Maps Leads via Apify”, och behåller resten av arbetsflödet likadant. Vanliga justeringar är att hämta fler än 50 resultat, filtrera till enbart listningar med webbplats och att justera GPT-prompten så att den prioriterar specifika adresser (som “owner@” eller “contact@”).
Oftast beror det på en ogiltig eller utgången Apify-token i dina HTTP Request-headers. Det kan också fallera om du kopierade fel Apify-endpoint (se till att du använder API:t “Run Actor synchronously and get dataset items”). Om du hämtar många resultat på en gång kan rate limits dyka upp som timeouts, så mindre batchar eller en kort väntan mellan anrop hjälper.
Om du självhostar n8n finns ingen hård gräns för körningar (det beror mest på din server och API-gränser). På n8n Cloud begränsar din plan antalet körningar per månad, så några tusen leads per månad är realistiskt på betalda nivåer. I praktiken håller batchstorlekar på 20 körningarna stabila när du även laddar ner HTML och anropar OpenAI.
Ofta, ja, eftersom det här flödet inte bara är “skicka data från A till B”. Du skrapar, rensar, loopar, laddar ner HTML och kör AI-extraktion, vilket innebär att du vill ha kontroll över batchning och felhantering. n8n är också enklare att självhosta, så kostnaderna sticker inte iväg så fort du skalar. Zapier eller Make kan fortfarande funka för lättare varianter, men så fort du lägger till webbplatsskrapning plus AI blir det pilligt och dyrt. Om du vill ha hjälp att välja, prata med en automationsexpert.
När det här väl är på plats slutar lead sourcing vara ett måste och blir i stället ett repeterbart inflöde till din outreach-motor. Sätt upp det en gång och lägg sedan tiden på budskap och uppföljning i stället.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.