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

Google Maps till Sheets: berikade leads, klara

Rickard Andersson Partner, Nodenordic.se

Att bygga en lokal leadlista låter enkelt tills du har 40 flikar öppna i Google Maps, sitter och kopierar telefonnummer manuellt och ändå saknar ägarens namn.

Marknadschefer känner av det här när outreach stannar av. En lokal SEO-konsult hamnar i research i stället för strategi. Och byråägare betalar för timmar av ”datainmatning” som aldrig syns i ett förslag. Den här automatiseringen för Google Maps-leads gör en sökning som ”Tandläkare i Miami” till ett berikat Google Sheet som du faktiskt kan använda.

Du får se hur arbetsflödet hämtar listningar, tar bort dubbletter, berikar varje företag via deras webbplats och sedan loggar korrekt formaterade rader i Google Sheets för outreach eller CRM-import.

Så fungerar den här automatiseringen

Hela n8n-arbetsflödet, från trigger till slutlig output:

n8n Workflow Template: Google Maps till Sheets: berikade leads, klara

Problemet: Google Maps-leads tar en evighet att sammanställa

Manuell prospektering i Google Maps är den typen av uppgift som ser harmlös ut i en att-göra-lista, men som i tysthet äter upp din vecka. Du söker. Du öppnar en listning. Du kopierar namn, webbplats, telefon, plats. Sedan inser du att webbplatsen kanske har ägarens namn (eller åtminstone en kontaktmejl), så du börjar gräva i Om-sidor och sidfötter. Vid lead 20 är du trött, inkonsekvent och ärligt talat mer benägen att missa de bästa prospekten eftersom du stressade igenom researchen.

Det går snabbt att summera. Här är var det faller isär i verkligheten.

  • Du lägger cirka 5 minuter per listning bara på att samla in grunderna, och berikning tar ytterligare 5 minuter när du kollar webbplatsen.
  • Dubbletter smyger sig in eftersom samma företag dyker upp i flera map packs eller i lite olika sökvarianter.
  • Ägarnamn och mejladresser blir tomma, så outreach blir generisk och svarsfrekvensen sjunker.
  • Din ”leadlista” är egentligen inget system, vilket innebär att du upprepar samma manuella jobb varje gång du går in i en ny stad eller nisch.

Lösningen: skrapa, avduplicera, berika och logga leads automatiskt

Det här n8n-arbetsflödet gör en enkel förfrågan (stad + företagstyp) till en strukturerad, berikad leadlista i Google Sheets. Det startar när någon skickar in ett formulär som ”Rörmokare i Austin”. n8n skickar den frågan till Olostep API för att hämta Google Maps-listningar och konverterar sedan svaret till strukturerade, radklara poster. Därefter tas dubbletter bort så att arket förblir användbart. Sedan loopar arbetsflödet igenom varje företag och kör en andra Olostep-skrapning mot företagets webbplats för att hitta namn på beslutsfattare (vd, grundare etc.) och, när det finns, en kontaktmejl. Till sist lägger det till en prydlig rad per lead i Google Sheets och väntar mellan batcher för att hålla sig inom rate limits.

Arbetsflödet startar med en formulärinsändning. Sedan hämtar det Google Maps-listningar, städar och avduplicerar dem och berikar varje lead från företagets webbplats. Slutresultatet är ett Google Sheet som du kan filtrera, tilldela och använda för outreach utan den vanliga röran.

Vad du får: automatisering vs. resultat

Exempel: så här ser det ut

Säg att du vill ha 50 leads för ”Takläggare i Phoenix”. Manuellt kanske du lägger runt 10 minuter per företag (Maps-grunder plus en snabb webbplatskoll), vilket är cirka 8 timmar av monotont arbete. Med det här arbetsflödet tar det kanske 2 minuter att skicka in formuläret, och sedan kör n8n igenom batchen automatiskt med inbyggda fördröjningar medan det berikar varje webbplats. Du granskar det färdiga Google Sheetet när det är klart, och ditt ”jobb” är i princip att filtrera och starta outreach.

Det här behöver du

  • n8n-instans (prova n8n Cloud gratis)
  • Alternativ för self-hosting om du föredrar det (Hostinger fungerar bra)
  • Olostep API för att skrapa Google Maps och webbplatser
  • Google Sheets för att lagra de slutliga ledraderna
  • Olostep API-nyckel (hämta den i din Olostep-dashboard)

Kunskapsnivå: Nybörjare. Du kopplar konton, klistrar in en API-nyckel och mappar några fält till dina kolumner i Google Sheet.

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

Så fungerar det

En formulärinsändning startar körningen. Du anger en stad och företagstyp (som ”Tandläkare i Miami”) och skickar in. Den enda inputen blir sökfrågan för skrapningen.

Google Maps-listningar hämtas och städas. n8n anropar Olostep, tar emot en JSON-payload med kartlistningar och formar om den till konsekventa poster (namn, plats, webbplats, telefon). Snabb städning här förhindrar röriga ark senare.

Dubbletter tas bort, sedan berikas varje företag. Arbetsflödet filtrerar bort upprepade listningar och loopar över kvarvarande företag i batcher. För varje företag skrapar det företagets webbplats för att hitta namn på beslutsfattare och eventuella offentliga kontaktmejl det kan upptäcka.

Leads läggs till i Google Sheets med inbyggd fördröjning. Varje berikat lead blir en ny rad i ditt ark, och sedan pausar arbetsflödet kort mellan körningar så att du inte triggar rate limits eller får tomma svar från datakällan.

Du kan enkelt modifiera berikningsfälten för att fånga extra data som betyg, kategorier eller sociala länkar baserat på dina behov. Se hela implementationsguiden nedan för anpassningsalternativ.

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

Steg 1: Konfigurera triggern för formulärinskick

Konfigurera formuläret som startar arbetsflödet och fångar upp sökparametrarna som används för att skrapa Google Maps.

  1. Lägg till noden Form Submission Trigger och öppna dess inställningar.
  2. Ställ in Form Title till Olostep lead generation.
  3. Ställ in Form Description till enter the required fields to start!.
  4. Under Form Fields, skapa två obligatoriska fält: City (platshållare London) och business (platshållare Dentist).
  5. Koppla Form Submission Trigger till Fetch Map Listings.

Steg 2: Anslut Olostep-skrapningsanrop

Konfigurera de två HTTP-skrapningsanropen som hämtar listningar från Google Maps och kontaktuppgifter från varje företags webbplats.

  1. I Fetch Map Listings, ställ in URL till https://api.olostep.com/v1/scrapes och Method till POST.
  2. Ställ in JSON Body till det angivna uttrycket så att sök-URL:en använder formulärinmatningen: https://www.google.com/maps/search/{{ $json.City }}+{{ $json.business }}.
  3. I Fetch Map Listings, ställ in headern Authorization till Bearer [CONFIGURE_YOUR_TOKEN] och ersätt den med er Olostep-token.
  4. I Fetch Contact Details, ställ in URL till https://api.olostep.com/v1/scrapes och Method till POST.
  5. Ställ in JSON Body i Fetch Contact Details så att den använder listningens webbplats: {{ $json.website}}.
  6. Ställ in headern Authorization i Fetch Contact Details till Bearer [CONFIGURE_YOUR_TOKEN] och ersätt den med er Olostep-token.
  7. Koppla Fetch Map ListingsPrepare Listing JSON och Fetch Contact DetailsParse Contact JSON.

⚠️ Vanlig fallgrop: Om Authorization-token saknas eller är ogiltig kommer båda HTTP-anropen att misslyckas även om arbetsflödet fortsätter. Säkerställ att headervärdet uppdateras i både Fetch Map Listings och Fetch Contact Details.

Steg 3: Konfigurera parsning av listningar och borttagning av dubletter

Omvandla det råa listningssvaret till en ren array, dela upp den i enskilda poster och ta bort dubletter.

  1. I Prepare Listing JSON, lägg till en assignment med namnet parsedJson med typen array och värdet {{ $json.result.json_content.replace(/\\/g, '') }}.
  2. I Split Listing Records, ställ in Field To Split Out till parsedJson.
  3. Låt Deduplicate Records vara kvar på standardinställningarna för att ta bort upprepade listningar.
  4. Koppla Prepare Listing JSONSplit Listing RecordsDeduplicate RecordsIterate Listings.

Steg 4: Konfigurera kontaktparsning och tillägg av leads

Parsa svaret från kontaktextraktionen och mappa data till Google Sheets.

  1. I Parse Contact JSON, lägg till en assignment med namnet parsedJson med typen object och värdet {{ $json.result.json_content.replace(/\\/g, '') }}.
  2. I Append Lead Row, ställ in Operation till append.
  3. Välj målarket i Document ID och målfliken i Sheet Name.
  4. Mappa kolumner med de angivna uttrycken, inklusive {{ $('Iterate Listings').item.json.name || "not found" }}, {{ $('Iterate Listings').item.json.website || "not found" }} och {{ $json.parsedJson.email || "not found"}}.
  5. Koppla Parse Contact JSONAppend Lead Row.

Inloggning krävs: Anslut era Google Sheets-inloggningsuppgifter i Append Lead Row.

Steg 5: Konfigurera batchning och fördröjningsloop

Styr iterationen över listningar och lägg till en fördröjning mellan varje tillägg för att undvika rate limits.

  1. I Iterate Listings, behåll standardinställningarna för batchar om ni inte vill begränsa volymen per körning.
  2. Bekräfta att den sekundära utgången från Iterate Listings är kopplad till Fetch Contact Details.
  3. Koppla Append Lead RowDelay IntervalIterate Listings för att skapa loopen.

Tips: Om ni stöter på API-rate limits, öka väntetiden i Delay Interval eller begränsa batchstorlekarna i Iterate Listings.

Steg 6: Testa och aktivera ert arbetsflöde

Kör ett manuellt test för att bekräfta att era formulärinmatningar genererar leads och lägger till rader i ert kalkylark, och aktivera sedan arbetsflödet.

  1. Klicka på Execute Workflow och skicka in formuläret från Form Submission Trigger med en teststad och en typ av verksamhet.
  2. Verifiera att Fetch Map Listings returnerar en JSON-payload och att Prepare Listing JSON skapar parsedJson.
  3. Bekräfta att Append Lead Row skriver en ny rad med namn, webbplats, plats, telefon och kontaktfält.
  4. När resultaten ser korrekta ut, slå på arbetsflödet till Active för användning i produktion.
🔒

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

Få den kompletta implementeringsguiden + nedladdningsbar mall

Vanliga fallgropar

  • Olostep-inloggningar kan gå ut eller kräva specifika behörigheter. Om det skapar fel, kontrollera först din Olostep-dashboard och credential-inställningarna i n8n.
  • Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om nedströmsnoder fallerar på tomma svar.
  • Standardprompter i AI-noder är generiska. Lägg in er tonalitet tidigt, annars kommer du att redigera outputen i all evighet.

Vanliga frågor

Hur lång tid tar det att sätta upp den här automatiseringen för Google Maps-leads?

Cirka 30 minuter om din Olostep-nyckel och ditt Google Sheet är redo.

Behöver jag kunna koda för att automatisera Google Maps-leads?

Nej. Du klistrar mest in en API-nyckel och matchar fält mot dina kolumner i Google Sheets.

Är n8n gratis att använda för det här arbetsflödet för Google Maps-leads?

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 Olostep API-kostnader baserat på hur många listningar och webbplatser du skrapar.

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

Två alternativ: n8n Cloud (managed, enklast att sätta upp) eller self-hosting på en VPS. För self-hosting är Hostinger VPS prisvärd och hanterar n8n bra. Self-hosting ger dig obegränsade körningar men kräver grundläggande serveradministration.

Kan jag anpassa den här automatiseringen för Google Maps-leads för andra berikningsfält?

Ja, och det är det bästa. Du kan utöka mappningen i ”Parse Contact JSON” för att spara extra fält som sociala länkar, kategorier eller en kort företagsbeskrivning och sedan lägga till nya kolumner i Google Sheets som matchar. Många team justerar också webbplatsskrapningen för att titta specifikt på Kontakt- eller Om-sidor när startsidan är tunn. Om du vill ha notiser kan du lägga till ett Telegram- eller mejlsteg när batchen är klar.

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

Oftast är det ett behörighetsproblem i målarket, eller att namn på sheet/flik har ändrats efter att du mappade fält i n8n. Anslut dina Google Sheets-credentials igen och välj sedan kalkylarket och worksheet på nytt i steget ”Append Lead Row” så att kolumnmappningen uppdateras. Kontrollera också att ditt Google-konto faktiskt kan redigera arket (inte bara visa). Om du försöker lägga till i ett skyddat område blockerar Google det utan att säga så mycket.

Hur många leads klarar den här automatiseringen för Google Maps-leads?

Några hundra per körning är realistiskt för de flesta team. Sedan finjusterar du batchstorlek och väntetid utifrån Olostep-begränsningar och din n8n-plan.

Är den här automatiseringen för Google Maps-leads bättre än att använda Zapier eller Make?

Ofta ja, eftersom den här typen av skrapnings- och berikningsflöde behöver loopar, avduplicering och kontroll över ”wait”, vilket blir klumpigt (och dyrt) i enklare automationsverktyg. n8n hanterar batcher naturligt, vilket spelar roll när du bearbetar dussintals listningar åt gången. Du får också möjligheten att self-hosta, vilket är hjälpsamt om du kör detta ofta. Zapier eller Make kan fortfarande fungera om du håller arbetsflödet väldigt litet, men du kommer oftast att slå i gränser när du lägger till berikning. Prata med en automationsexpert om du vill ha en snabb rekommendation för din exakta volym.

Ett felfritt, berikat leadark ändrar tempot i outreach. Sätt upp det här en gång och lägg sedan tiden på målgrupp och budskap i stället för manuellt copy-paste-jobb.

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

Launch login modal Launch register modal