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

OpenAI + Google Sheets, marknadsanalys åt dig

Rickard Andersson Partner, Nodenordic.se

Du kan det här. Någon ber om ”en snabb marknadsscan”, och plötsligt jonglerar du flikar, halvfärdiga anteckningar och ett kalkylark som aldrig riktigt matchar vad verksamheten faktiskt behöver.

Marknadschefer känner oftast av pressen först, eftersom de behöver svar snabbt. Men byråägare och operatörer som jobbar med founder-led growth kör in i samma vägg. Den här OpenAI Sheets-research-automationen gör en begäran på vanlig svenska till ett strukturerat dataset som du faktiskt kan använda.

Nedan ser du hur workflowet tänker igenom din begäran, designar rätt kolumner, hämtar källor från webben och levererar en felfri CSV (redo för Google Sheets, Excel, Airtable eller Slack).

Så fungerar den här automationslösningen

Hela n8n-workflowet, från trigger till slutlig output:

n8n Workflow Template: OpenAI + Google Sheets, marknadsanalys åt dig

Problemet: marknadsresearch blir kalkylarkskaos

Det mesta inom ”marknadsresearch” är inte svårt för att informationen inte finns. Det är svårt för att processen är rörig. Du börjar med en vag prompt (”Hitta 50 konkurrenter” eller ”Bygg en leadlista”), inser sedan att du behöver andra kolumner än du planerade, och lägger resten av dagen på att kopiera utdrag till ett ark som redan är inkonsekvent. En kollega skriver ”Prissättning” som text, en annan lägger in en länk, en tredje lämnar det tomt. När det väl är ”klart” har du en fil som inte går att filtrera ordentligt och som inte går att återanvända nästa vecka.

Friktionen växer snabbt. Här är var det oftast brister.

  • Du tappar cirka 2 timmar bara på att bestämma vilka kolumner arket ska ha.
  • Manuell research ger ojämn data, vilket innebär mer städning än analys.
  • Bra källor försvinner i webbhistoriken, så du kan inte försvara slutsatserna i efterhand.
  • Varje ny begäran blir ett helt nytt kalkylark, så teamet bygger aldrig momentum.

Lösningen: AI planerar arket och fyller det

Det här n8n-workflowet använder en ”tänkare och görare”-setup. Först skickar du in en research-begäran på vanlig svenska via ett enkelt formulär (till exempel ”Hitta 50 USA-baserade modeföretag för outreach”). OpenAI agerar planerare: tolkar ditt mål, avgör vilka datafält som är viktiga och genererar ett strukturerat schema för kalkylarket. Sedan kör workflowet research-fasen. Det gör en initial discovery-sökning för att hitta en lista med relevanta objekt, loopar igenom varje objekt, kör en detaljuppslagning för att berika datan och sammanställer resultatet i en konsekvent JSON-struktur. Till sist konverteras allt till en CSV-fil som du kan lägga in i Google Sheets eller Excel utan omformatering.

Det börjar med en begäran och slutar med ett användbart dataset. Däremellan samlar Linkup-drivna webbsökningar in rådata, och workflowet gör om det till rader som matchar kolumnerna som OpenAI planerade.

Vad du får: automation vs. resultat

Exempel: så här ser det ut

Säg att du behöver en lista med 50 företag för en outreach-kampanj. Manuellt kanske du lägger cirka 5 minuter på att hitta varje företag, plus ytterligare 2 minuter på att fånga detaljer som webbplats, kategori, plats och anteckningar. Det blir ungefär 6 timmars arbete, och arket blir ändå inkonsekvent. Med det här workflowet skickar du in en formulärbegäran (en minut eller två) och väntar sedan på att discovery + berikningsloopen körs och exporterar CSV-filen (ofta runt 15 minuter, ibland längre beroende på sökningen). Du får samma lista, redan strukturerad, utan copy-paste-maraton.

Det du behöver

  • n8n-instans (prova n8n Cloud gratis)
  • Self-hosting-alternativ om du föredrar det (Hostinger fungerar bra)
  • OpenAI för att planera schema och prompts.
  • Linkup (via HTTP Request) för att söka och berika webbresultat.
  • Linkup API-nyckel (hämta den i din linkup.so-dashboard).

Svårighetsnivå: Medel. Du kopplar credentials, klistrar in en API-nyckel och gör några små ändringar för att matcha dina databehov.

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

Så fungerar det

Formulärbegäran kommer in. Du skriver ett research-mål på vanlig svenska via den inbyggda formulärtriggern. Var specifik (”50 USA-baserade…” slår ”några företag”), eftersom workflowet designar kalkylarket utifrån det du ber om.

OpenAI tar fram research-plan och schema. AI-agenten skapar en discovery-fråga (för att hitta startlistan), en berikningsfråga (för att hämta detaljer per objekt) och ett strukturerat schema som i praktiken blir dina kalkylarkskolumner.

Linkup söker på webben och berikar sedan varje objekt. Workflowet kör en discovery-sökning via HTTP Request, delar upp resultatlistan i enskilda objekt och loopar igenom dem i batchar. För varje objekt extraherar det nyckelidentifieraren, kör en detaljuppslagning och sätter ihop en felfri JSON-rad.

En CSV-fil genereras för export. När loopen är klar konsolideras allt och konverteras till en nedladdningsbar CSV, som du kan ladda upp till Google Sheets, öppna i Microsoft Excel eller skicka vidare till Airtable och Slack om du bygger ut workflowet.

Du kan enkelt ändra kolumnerna och berikningsdjupet så att det passar din nisch. Se hela implementationsguiden nedan för anpassningsalternativ.

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

Steg 1: Konfigurera formulärtriggern

Börja med att definiera användarinmatningen som initierar arbetsflödet.

  1. Lägg till noden Form Entry Trigger som arbetsflödets trigger.
  2. Ställ in Form TitleNew research.
  3. Under Form Fields, lägg till ett textarea-fält med etiketten Describe your research och markera det som obligatoriskt.

Tips: Behåll fältetiketten exakt som Describe your research eftersom den refereras av ett uttryck längre fram i flödet.

Steg 2: Anslut Linkup API-anrop

Konfigurera de två Linkup API-anropen som hämtar discovery-listan och berikningsdetaljer per post.

  1. Öppna Linkup List Search och ställ in URLhttps://api.linkup.so/v1/search.
  2. Ställ in MethodPOST och aktivera Send Body.
  3. Under Body Parameters, ställ in q{{ $json.discoveryQuery }}, depthdeep, outputTypestructured, structuredOutputSchema{{ JSON.stringify($json.discoverySchema) }} och includeImagesfalse.
  4. Credential Required: Anslut era httpBearerAuth-uppgifter i Linkup List Search.
  5. Öppna Linkup Detail Lookup och ställ in URLhttps://api.linkup.so/v1/search med Method POST och Send Body aktiverat.
  6. Ställ in qFor item: {{ $('Iterate Records').item.json.PropertyValue }} {{ $('Draft Prompts & Schema').item.json.enrichmentQuery }}, depthstandard, outputTypestructured, structuredOutputSchema{{ JSON.stringify($('Draft Prompts & Schema').item.json.enrichmentSchema) }} och includeImagesfalse.
  7. Credential Required: Anslut era httpBearerAuth-uppgifter i Linkup Detail Lookup.

⚠️ Vanlig fallgrop: Om ert Linkup-schema inte är giltig JSON kommer den strukturerade outputen att misslyckas. Säkerställ att structuredOutputSchema är giltig JSON innan ni testar.

Steg 3: Sätt upp Draft Prompts & Schema med OpenAI

Definiera hur arbetsflödet tar fram en discovery- och berikningsplan utifrån användarens research-prompt.

  1. Öppna OpenAI Chat Engine och ställ in Modelgpt-5-chat-latest.
  2. I Options, ställ in Response Formatjson_object.
  3. Credential Required: Anslut era openAiApi-uppgifter i OpenAI Chat Engine.
  4. Öppna Draft Prompts & Schema och ställ in Text{{ $json['Describe your research'] }}.
  5. Ställ in Prompt Typedefine och behåll det angivna systemprompt-innehållet oförändrat.

Tips: Draft Prompts & Schema använder OpenAI Chat Engine som språkmodell—se till att uppgifterna läggs till i OpenAI Chat Engine, inte i undernoden.

Steg 4: Konfigurera listdelning och berikning per post

Omvandla Linkup-listan till poster per objekt och berika dem med ytterligare detaljer.

  1. I Split List Items, ställ in Field To Split OutList.
  2. Behåll Iterate Records med standardinställningar för att batcha igenom varje listpost.
  3. I Extract Object Key, ställ in tilldelningen Name{{ $('Draft Prompts & Schema').item.json.ObjectName }} och Value{{ $json.PropertyValue }}.
  4. I Assemble Item JSON, behåll den angivna JavaScript-koden för att kombinera objektnamnet med berikade fält till en och samma förenklade post.
  5. Iterate Records skickar output både till Generate CSV File och Extract Object Key parallellt, vilket gör att berikning och filkonvertering kan köras samtidigt.

⚠️ Vanlig fallgrop: Om er discovery-output använder en annan array-nyckel än List kommer Split List Items inte att dela upp korrekt.

Steg 5: Konfigurera CSV-output

Konvertera de berikade posterna till en nedladdningsbar CSV-fil.

  1. Öppna Generate CSV File och behåll standardinställningarna för att konvertera inkommande JSON-poster till en fil.
  2. Säkerställ att Generate CSV File tar emot data från Iterate Records.

Tips: Om ni behöver ett specifikt filnamn eller MIME-typ kan ni lägga till alternativ senare i Generate CSV File.

Steg 6: Testa och aktivera ert arbetsflöde

Verifiera end-to-end-flödet innan ni slår på det för produktion.

  1. Klicka på Execute Workflow och skicka in formuläret i Form Entry Trigger med en realistisk research-prompt.
  2. Bekräfta att Draft Prompts & Schema returnerar ett JSON-objekt med nycklarna ObjectName, discoveryQuery, discoverySchema, enrichmentQuery och enrichmentSchema.
  3. Verifiera att Linkup List Search returnerar en strukturerad lista och att Split List Items skapar ett item per post.
  4. Kontrollera att Assemble Item JSON output:ar platta, stringifierade fält och att Generate CSV File skapar en CSV-fil.
  5. När allt fungerar, växla arbetsflödet till Active för att ta emot nya formulärinsändningar i produktion.
🔒

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

Få den kompletta implementeringsguiden + nedladdningsbar mall

Vanliga fallgropar

  • OpenAI-credentials kan löpa ut eller vara kopplade till fel projekt. Om saker skapar fel, kontrollera först credentials för noden OpenAI Chat Model i n8n.
  • Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om nedströmsnoder fallerar på tomma svar.
  • Linkup API-anrop kan fallera på grund av rate limits eller att kreditsaldot är slut. Kontrollera svaret i noden HTTP Request och din användningsdashboard på linkup.so innan du ändrar prompts.

Vanliga frågor

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

Cirka 30 minuter om du redan har dina API-nycklar.

Behöver jag kunna koda för att automatisera marknadsresearch med OpenAI Sheets-research-automation?

Nej. Du kopplar mest konton, klistrar in din Linkup API-nyckel och justerar prompten för den typ av research du vill ha.

Är n8n gratis att använda för det här workflowet för OpenAI Sheets-research-automation?

Ja. n8n har ett gratis self-hosted-alternativ och en gratis testperiod 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 API samt Linkup-sökkrediter (Linkup inkluderar några gratis månadskrediter och därefter pay-as-you-go).

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

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 hanterar n8n bra. Self-hosting ger dig obegränsade körningar men kräver grundläggande serveradministration.

Kan jag anpassa det här workflowet för OpenAI Sheets-research-automation för leadlistor i stället för konkurrentresearch?

Ja, och det är ärligt talat där det verkligen glänser. Uppdatera begäran du skickar in i Form Entry Trigger och justera AI-kedjan ”Draft Prompts & Schema” så att schemat inkluderar fält som beslutsfattarens namn, e-postmönster, plats och ”varför de passar”. Om du vill ha djupare berikning, justera även Linkup Detail Lookup-frågan så att den prioriterar kontakt- och karriärsidor i stället för produktsidor. Den slutliga CSV-filen följer det schema du definierar.

Varför fallerar min Linkup-anslutning i det här workflowet?

Oftast är det en ogiltig eller utgången Bearer-token, så generera om din Linkup API-nyckel och uppdatera credential för noden HTTP Request. Det kan också vara lågt kreditsaldo eller att begäran blockeras eftersom du skickar för många sökningar för snabbt. Kontrollera HTTP-nodens senaste svar, eftersom det vanligtvis talar om vad som hände.

Hur många rader klarar den här OpenAI Sheets-research-automationen?

Om du self-hostar finns ingen hård körningsgräns (det beror på din server). På n8n Cloud beror det på din plans månadsvisa körningar, och research-workflows kan förbruka mycket eftersom varje berikning per objekt vanligtvis är ett separat anrop. I praktiken kör de flesta team listor på 20–200 rader utan problem och skalar sedan upp när schema och prompts är intrimmade.

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

För AI-drivna research-loopar är n8n ofta en bättre match eftersom det hanterar branching, batching och mönster som ”loopa över objekt” snyggt utan att prissätta dig in i ett hörn. Self-hosting spelar också roll här, eftersom berikningssteg kan skapa många körningar. Zapier eller Make kan fortfarande fungera om du håller det enkelt (en sökning, en skrivning till ark), men så fort du vill ha research i flera faser blir det klumpigt. Dessutom gör n8n det lättare att inspektera mellanliggande data när något ser fel ut. Om du tvekar, prata med en automationsexpert så får du en rak rekommendation.

När det här väl är på plats slutar ”kan du researcha det här?” att vara en distraktion som tar hela dagen. Du får strukturerade svar vid begäran, och kan lägga tiden på att fatta beslut i stället för att formatera celler.

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