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

DataForSEO till Google Sheets: byggd sökordshistorik

Rickard Andersson Partner, Nodenordic.se

Sökordsanalys blir snabbt rörig. Du kör en rapport, klistrar in resultat i ett kalkylark, justerar kolumner, tappar datumet, och gör sedan om allt nästa vecka och inget stämmer längre.

Innehållsmarknadsförare märker det när planeringen går långsamt. SEO-specialister märker det när uppföljningen blir rena gissningen. Och byråledare märker det när varje kund behöver ”en export till”. Den här DataForSEO Sheets-automationen förvandlar kaoset till en strukturerad, daterad historik som du faktiskt kan använda.

Du sätter upp ett n8n-flöde som hämtar sökords-, SERP- och People Also Ask-insikter från DataForSEO och lägger till dem i rätt Google Sheet vid varje körning. Ingen kolumnförskjutning. Ingen saknad kontext.

Så fungerar automationen

Här är hela flödet du kommer att sätta upp:

n8n Workflow Template: DataForSEO till Google Sheets: byggd sökordshistorik

Varför det här spelar roll: sökordsanalys utan kalkylarksspiralen

SEO-research är inte svårt för att data saknas. Det är svårt för att arbetsflödet runt datan är skört. En kollega exporterar SERP:ar till en CSV, en annan klistrar in ”People Also Ask” i en separat flik, och någon annan döper om kolumner för att passa sin egen mall. En vecka senare försöker du jämföra trender och inser att arket är ett lapptäcke. Än värre: datumet saknas, så du kan inte avgöra om en rankingförändring hände i tisdags eller för tre månader sedan. Så här faller bra innehållsmöjligheter mellan stolarna.

Friktionen byggs på. Det här är punkterna där det oftast skapar fel.

  • Exporter matchar inte din arkstruktur, så varje körning börjar med rensning.
  • SERP- och PAA-insikter ligger på olika ställen, vilket gör att planeringen sker utan helhetsbilden.
  • När datum inte loggas konsekvent blir ”trenduppföljning” en magkänsla, inte en process.
  • Manuell copy-paste bjuder in småfel som i tysthet förstör jämförelser och rapportering.

Det du bygger: DataForSEO-insikter loggade till Sheets automatiskt

Det här flödet ger dig en repeterbar pipeline för SEO-research. Det börjar med en enkel formulärinlämning i n8n (eller en schemalagd körning) där du väljer vilken typ av research du vill göra, som relaterade sökord, sökordsförslag, autocomplete-idéer, underteman eller People Also Ask-frågor. n8n skickar sedan rätt HTTP-anrop till DataForSEO, hämtar tillbaka det råa JSON-svaret och normaliserar det till korrekt formaterade rader. Om Google Sheet (eller den specifika fliken för den operatorn) inte finns ännu skapar flödet den åt dig. Till sist lägger det till resultaten med konsekventa kolumner och ett datum, så att varje körning blir en del av en växande sökordshistorik istället för en engångsexport.

Flödet startar från formulärtriggern, validerar dina indata och skickar sedan vidare via en switch som väljer rätt DataForSEO-endpoint. När datan expanderats till enskilda objekt mappar n8n fält till ett standardiserat format och lägger till rader i matchande Google Sheet-flik.

Det du bygger

Förväntade resultat

Säg att du analyserar 20 sökord varje vecka och vanligtvis hämtar fem dataset per sökord (relaterade, förslag, autocomplete, underteman och PAA). Om du lägger ungefär 3 minuter på att exportera, formatera och klistra in varje dataset blir det cirka 300 minuter, eller 5 timmar i veckan. Med det här flödet skickar du in en begäran en gång och låter n8n lägga till allt i rätt Google Sheet-flik; din ”tidsåtgång” hamnar närmare 10 minuter för uppsättning och granskning. Det är en riktig eftermiddag tillbaka, varje vecka.

Innan du börjar

  • n8n-instans (prova n8n Cloud gratis)
  • Self-hosting-alternativ om du föredrar det (Hostinger fungerar bra)
  • DataForSEO-konto för åtkomst till sökords- och SERP-data.
  • Google Sheets för att lagra och följa upp sökordshistorik.
  • DataForSEO API-uppgifter (hämta dem i din DataForSEO-dashboard).

Svårighetsgrad: Nybörjare. Du kopplar konton, klistrar in uppgifter och ändrar några fält som plats och språk.

Vill du att någon bygger detta åt dig? Prata med en automationsexpert (gratis 15-minuters konsultation).

Steg för steg

En formulärinlämning triggar körningen. Du anger sökordet (eller en sökordsuppsättning) och väljer operationstyp, som relaterade sökord, förslag, autocomplete, underteman eller PAA.

Dina indata valideras och mappas. En If-nod kontrollerar obligatoriska fält så att du inte bränner API-anrop på tomma sökord. Sedan standardiserar en Set-nod det som resten av flödet förväntar sig, vilket håller den fortsatta mappningen stabil.

n8n routar till rätt DataForSEO-endpoint. En switch väljer rätt gren, och därefter hämtar HTTP Request-noder datasetet du valt. Split out- och batch-steg expanderar API-svaret till radformade objekt så att det blir enkelt att lagra.

Google Sheets-flikar skapas och fylls. För varje operator skapar flödet det relaterade arket vid behov, mappar fält till konsekventa kolumner och lägger sedan till rader med ett datum så att din historik växer över tid.

Du kan enkelt ändra operator-alternativen för att lägga till SERP-analys eller konkurrentresearch utifrån dina behov. Se hela implementationsguiden nedan för anpassningsalternativ.

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

Steg 1: konfigurera formulärtriggern

Skapa formuläret som samlar in nyckelord, plats, språk och operationstyp från användare.

  1. Lägg till noden Form Submission Trigger som workflow-trigger.
  2. Ställ in Form Title till SEO Related Keyword Finder🚀 och Form Description till ✏️ Enter your target keyword\n📍 Choose the location\n🌐 Select the language.
  3. Konfigurera fält för keyword, location_name (rullgardinsmeny), language_name (rullgardinsmeny) och Operation (rullgardinsmeny).
  4. Valfritt: behåll stylingen options.customCss om ni vill att neon-temat ska användas på formuläret.

Steg 2: validera och mappa inkommande data

Validera obligatoriska indata och normalisera fältnamn för efterföljande noder.

  1. I Validate Input Fields behåller ni de fyra notEmpty-kontrollerna för {{$json.keyword}}, {{$json.location_name}}, {{$json.language_name}} och {{$json.Operation}}.
  2. I Map Request Fields skapar ni tilldelningar som mappar operation till {{$json.Operation}}, keyword till {{$json.keyword}}, location_name till {{$json.location_name}} och language_name till {{$json.language_name}}.

Steg 3: anslut Google Sheets och logga sammanfattningen

Skriv den inkommande begäran till ett sammanfattningsark och routa sedan workflowet baserat på vald operation.

  1. Öppna Append Summary Row och ställ in Operation till append med Authentication satt till serviceAccount.
  2. Mappa kolumner: Time till {{$('Form Submission Trigger').item.json.submittedAt}}, keyword till {{$json.keyword}}, operation till {{$json.operation}}, language_name till {{$json.language_name}} och location_name till {{$json.location_name}}.
  3. Inloggningsuppgifter krävs: anslut era googleApi-inloggningsuppgifter i Append Summary Row.
  4. I Route Operation Type behåller ni reglerna som matchar related keywords🔑, keyword suggestion💡, get autocomplete🧩, get subtopics📚 och people also ask🔍{{$json.operation}}.

Tips: workflowet använder ett Google Sheets-dokument (dokument-ID [YOUR_ID]) och skapar nya flikar per operation med {{$json.keyword}} [{{$json.operation}}] som titel.

Steg 4: konfigurera flödet för relaterade nyckelord

Det här flödet skapar en flik i arket och hämtar relaterade nyckelord från DataForSEO och lägger sedan till rader.

  1. I Create Related Sheet ställer ni in Operation till create och Title till ={{ $json.keyword }} [{{ $json.operation }}].
  2. Inloggningsuppgifter krävs: anslut era googleApi-inloggningsuppgifter i Create Related Sheet.
  3. I Related Keywords API behåller ni URL som https://api.dataforseo.com/v3/dataforseo_labs/google/related_keywords/live och JSON Body med {{$('Route Operation Type').item.json.keyword}}, {{$('Route Operation Type').item.json.location_name}} och {{$('Route Operation Type').item.json.language_name}}.
  4. Inloggningsuppgifter krävs: anslut era httpBasicAuth-inloggningsuppgifter i Related Keywords API.
  5. I Expand Related Items ställer ni in Field To Split Out till tasks[0].result[0].items.
  6. I Map Related Fields mappar ni fält som related keyword till {{ $json.keyword_data.keyword }} och SERP Analysis till {{$json.keyword_data.serp_info.serp_item_types.join(",")}}.
  7. I Append Related Rows ställer ni in Operation till append och Sheet Name till ={{ $('Create Related Sheet').item.json.sheetId }}.
  8. Inloggningsuppgifter krävs: anslut era googleApi-inloggningsuppgifter i Append Related Rows.

Steg 5: konfigurera flöden för förslag och autocomplete

Konfigurera grenarna för nyckelordsförslag och autocomplete som skapar ark, anropar API:er, delar upp resultat, mappar fält och lägger till rader.

  1. För grenen med förslag konfigurerar ni Create Suggestion Sheet med Title ={{ $json.keyword }} [{{ $json.operation }}] och ställer in Operation till create.
  2. Inloggningsuppgifter krävs: anslut era googleApi-inloggningsuppgifter i Create Suggestion Sheet och Append Suggestion Rows.
  3. I Keyword Suggestion API behåller ni URL https://api.dataforseo.com/v3/dataforseo_labs/google/keyword_suggestions/live och JSON body med samma {{$('Route Operation Type').item.json.*}}-uttryck.
  4. Inloggningsuppgifter krävs: anslut era httpBasicAuth-inloggningsuppgifter i Keyword Suggestion API.
  5. För autocomplete konfigurerar ni Create Autocomplete Sheet och behåller Title som ={{ $json.keyword }} [{{ $json.operation }}].
  6. I Autocomplete API behåller ni URL https://api.dataforseo.com/v3/serp/google/autocomplete/live/advanced och JSON body med client satt till gws-wiz-serp.
  7. Inloggningsuppgifter krävs: anslut era httpBasicAuth-inloggningsuppgifter i Autocomplete API och era googleApi-inloggningsuppgifter i Append Autocomplete Rows.

Tips: noderna Expand Suggestion Items och Expand Autocomplete Items använder båda tasks[0].result[0].items för uppdelning, så bekräfta att API-svaren innehåller den arrayen.

Steg 6: konfigurera flöden för underämnen och people also ask

Konfigurera grenarna för underämnen och PAA som genererar ämnesidéer och frågor.

  1. I Create Subtopics Sheet och Create PAA Sheet behåller ni Title satt till ={{ $json.keyword }} [{{ $json.operation }}] och Operation satt till create.
  2. Inloggningsuppgifter krävs: anslut era googleApi-inloggningsuppgifter för Create Subtopics Sheet, Append Subtopic Rows, Create PAA Sheet och Append PAA Rows.
  3. I Subtopics API behåller ni URL https://api.dataforseo.com/v3/content_generation/generate_sub_topics/live och JSON body med {{ $('Route Operation Type').item.json.keyword }}.
  4. Inloggningsuppgifter krävs: anslut era httpBasicAuth-inloggningsuppgifter i Subtopics API och People Also Ask API.
  5. I People Also Ask API uppdaterar ni URL från https://api.dataforseo.[CONFIGURE_YOUR_API_KEY] till er riktiga endpoint innan ni testar.
  6. Behåll Filter PAA Type inställd på att filtrera på {{$json.type}} lika med people_also_ask, och dela sedan upp med Expand PAA Details med items.

⚠️ Vanlig fallgrop: om People Also Ask API fortfarande har [CONFIGURE_YOUR_API_KEY] i URL:en kommer anropet att misslyckas. Ersätt den med er faktiska DataForSEO-endpoint.

Steg 7: testa och aktivera ert workflow

Kör ett manuellt test för att verifiera att varje gren skriver till sitt respektive ark och aktivera sedan workflowet.

  1. Klicka på Execute Workflow och skicka in formuläret Form Submission Trigger med ett nyckelord, plats, språk och en operation.
  2. Bekräfta att Append Summary Row lägger till en ny rad i arket summary och att rätt operationsflöde körs.
  3. Verifiera att det operationsspecifika arket skapas (t.ex. av Create Related Sheet) och att rader läggs till (t.ex. av Append Related Rows).
  4. Om en gren inte returnerar någon data, kontrollera svaren från Related Keywords API, Keyword Suggestion API, Autocomplete API, Subtopics API eller People Also Ask API för schemaändringar.
  5. När resultaten ser korrekta ut, växla workflowet till Active för att möjliggöra användning i produktion.
🔒

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

Få den kompletta implementeringsguiden + nedladdningsbar mall

Tips för felsökning

  • Google Sheets-uppgifter kan löpa ut eller kräva specifika behörigheter. Om det skapar fel, kontrollera först Google-kopplingen i n8n:s lista över Credentials och bekräfta sedan att kontot kan skapa och redigera det aktuella kalkylarket.
  • Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om efterföljande noder misslyckas på grund av tomma svar.
  • OpenAI-prompter i AI-noder är generiska. Lägg in er tonalitet tidigt, annars kommer du att redigera output för alltid.

Snabba svar

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

Cirka 30 minuter om dina DataForSEO- och Google-konton är redo.

Krävs kodning för den här automationen av sökordshistorik?

Nej. Du kopplar främst inloggningsuppgifter och justerar några mappade fält. Flödet hanterar redan API-anropen och formateringen.

Är n8n gratis att använda för det här DataForSEO Sheets-automationsflödet?

Ja. n8n har ett gratis self-hosted-alternativ och en gratis provperiod på n8n Cloud. Cloud-planer startar på 20 USD/månad för högre volym. Du behöver också räkna in kostnader för DataForSEO API-användning baserat på hur många sökord och endpoints du träffar per körning.

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

Två alternativ: n8n Cloud (hanterat, enklast att komma igång) eller self-hosting på en VPS. För self-hosting är Hostinger VPS prisvärd och klarar n8n bra. Self-hosting ger dig obegränsade körningar men kräver grundläggande serverhantering.

Kan jag anpassa det här DataForSEO Sheets-automationsflödet för andra use cases?

Ja, och det är huvudskälet till att den här mallen är användbar. Du kan lägga till en SERP-gren genom att bygga ut switchen ”Route Operation Type” och duplicera mönstret du redan har (Create Sheet → HTTP Request → Split Out → Map Fields → Append Rows). Vanliga anpassningar är att ändra location_code och language_code, logga extra kolumner som CPC eller konkurrens, och lägga till ett AI Agent-steg som sammanfattar ”vad som förändrats sedan förra körningen”. Vill du göra konkurrentresearch kan du routa till en annan DataForSEO-endpoint och skriva till en egen flik så att dina Sheets förblir lättlästa.

Varför misslyckas min Google Sheets-koppling i det här flödet?

Oftast är det ett OAuth-behörighetsproblem eller en utgången token. Återanslut din Google Sheets-credential i n8n och bekräfta sedan att kontot kan skapa nya kalkylark och redigera befintliga. Om arket ligger i en delad enhet, se till att samma Google-konto har åtkomst där också.

Vilken volym kan det här DataForSEO Sheets-automationsflödet hantera?

Några hundra sökord per körning är vanligt, och du kan skala upp med batchning.

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

Ofta, ja. Det här flödet bygger på routing, item-expansion och konsekvent fältmappning, och n8n hanterar den typen av logik med flera grenar utan att det blir ett prissättningsproblem. Du får också self-hosting, vilket spelar roll när du gör många sökordshämtningar. Zapier eller Make kan fortfarande funka för ett enkelt ”en endpoint till ett ark”-jobb, men de blir klumpiga när du delar upp items och skriver till flera flikar. Om du är osäker, prata med en automationsexpert så gör vi en snabb rimlighetskontroll av din use case.

När detta väl är igång slutar din SEO-research vara en hög med exporter och börjar fungera som ett system. Sätt upp det, behåll historiken och planera innehåll från ett enda ark som du faktiskt litar på.

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