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

Google Sheets till e-post: konkurrentprisrapporter

Rickard Andersson Partner, Nodenordic.se

Att hålla koll på konkurrentpriser låter enkelt tills det blir en daglig övning i att hoppa mellan flikar, söka, kopiera länkar och gissa vilka annonser som faktiskt är jämförbara.

E-handelschefer märker det när marginalerna pressas. En marknadsansvarig som kör kampanjer märker det när påståenden om ”bästa pris” behöver bevis. Och om du är byrå eller konsult: manuella kontroller skalar inte. Den här automatiseringen av prisrapporter gör ett kalkylark till tydliga, konsekventa e-postrapporter.

Du får se hur arbetsflödet hämtar produktnamn från Google Sheets, hittar erbjudanden via Bright Datas Google Shopping-dataset, använder AI för att sammanfatta resultaten och mejlar en snygg HTML-rapport per produkt.

Så fungerar automatiseringen

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

n8n Workflow Template: Google Sheets till e-post: konkurrentprisrapporter

Problemet: kontroller av konkurrentpriser är repetitiva (och opålitliga)

Om du säljer mer än en handfull produkter blir konkurrentbevakning en ständig distraktion. Du söker upp en produkt, skummar igenom en massa annonser, öppnar för många flikar och försöker sedan fånga ”det viktiga” på ett sätt som någon annan kan lita på. En vecka senare har formatet ändrats, länkarna är inaktuella och teamet diskuterar skärmdumpar i stället för att bestämma vad som ska göras. Under tiden rör sig priser snabbt. Missar du en förändring i två dagar reagerar du för sent, vilket är sämsta möjliga läge att fatta marginalbeslut.

Det blir mycket snabbt. Här är var det brukar fallera.

  • Att söka på samma produkter om och om igen tar ungefär 10 minuter per produkt, och det är sällan ”klart” efter en sökning.
  • Resultat sammanfattas inkonsekvent, så du kan inte jämföra en rapport med nästa utan att dubbelkolla källänkarna.
  • Google Shopping-annonser är röriga, och att plocka ut pris, säljare och URL korrekt formaterat är lätt att göra fel manuellt.
  • Ett stavfel eller en skillnad i versaler/gemener i produktnamnet kan tyst ge noll meningsfulla träffar, så du tror att prissättningen är stabil när den inte är det.

Lösningen: Google Sheets → Bright Data → AI-sammanfattning → e-postrapport

Det här arbetsflödet tar produktlistan du redan underhåller i Google Sheets och gör den till en repeterbar konkurrentprisrapport du faktiskt kan använda. Det börjar med att läsa varje produkttitel från arket, och gör sedan en fråga mot Bright Datas marketplace-dataset (Google Shopping) för att hämta tillgängliga annonser. När dataset-snapshottet är klart hämtar arbetsflödet resultaten, validerar dem och extraherar fälten du bryr dig om, som pris, säljarnamn, titel och annonsens URL. Därefter kliver AI in och sammanfattar de bästa erbjudandena i lättläst Markdown, som konverteras till strukturerad, stylad HTML. Till sist skickar n8n en e-postrapport per produkt, med upp till 20 av de billigaste erbjudandena och klickbara länkar tillbaka till annonserna.

Arbetsflödet startas manuellt (eller enligt ett schema du lägger till senare) och bearbetar produkterna en och en för att vara stabilt. Det väntar och pollar Bright Data tills snapshottet är redo, så du inte fastnar med ofullständig data. Om något misslyckas loggar det en varning och fortsätter till nästa produkt.

Det du får: automatisering vs. resultat

Exempel: så här ser det ut

Säg att du följer 20 produkter varje vecka. Manuellt tar även en ”snabb” koll kanske 10 minuter per produkt när du väl har sökt, öppnat annonser, kopierat priser och klistrat in länkar, vilket blir runt 3 timmar i veckan. Med det här arbetsflödet uppdaterar du produktnamnen i Google Sheets, kör det och låter det jobba i bakgrunden. Det kan ta cirka 30 minuter från start till slut på grund av snapshot-pollning och AI-generering, men din aktiva tid är närmare 5 minuter.

Det här behöver du

  • n8n-instans (testa n8n Cloud gratis)
  • Alternativ för egen hosting om du föredrar det (Hostinger fungerar bra)
  • Google Sheets som källa för produktlistan.
  • Bright Data för att fråga mot Google Shopping-annonser.
  • Google Gemini API-nyckel (hämta den via Google AI Studio / Google Cloud-uppgifter).

Svårighetsnivå: Medel. Du kopplar konton, installerar en community-nod och klistrar in en API-nyckel.

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

Så fungerar det

En uppdatering i arket (och sedan en körning) startar processen. Arbetsflödet börjar från en manuell trigger och läser direkt dina rader i Google Sheets så att det har aktuella produkttitlar.

Produkterna hanteras i en kontrollerad loop. n8n bearbetar objekt i batchar (en produkt i taget), vilket håller Bright Data-snapshotflödet stabilt och gör fel enklare att isolera.

Bright Data frågas, och sedan pollas det tills resultaten är klara. Arbetsflödet skickar en snapshot-filterförfrågan mot marketplace-datasetet, väntar, kontrollerar status och upprepar tills snapshottet lyckas (eller tills felspåret triggas).

AI förvandlar råa annonser till en rapport du kan vidarebefordra. Efter extrahering och rensning skapar Gemini en Markdown-sammanfattning, n8n konverterar den till HTML, paketerar den med e-postsäker styling och skickar den färdiga rapporten via e-postnoden.

Du kan enkelt justera logiken för produktmatchning så att den blir mer förlåtande (eller striktare) utifrån dina behov. Se hela implementationsguiden nedan för anpassningsalternativ.

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

Steg 1: Konfigurera triggern för manuell körning

Det här arbetsflödet startar manuellt så att ni kan testa processen för prisögonblicksbild vid behov.

  1. Lägg till och öppna Manual Execution Start.
  2. Låt standardinställningarna vara som de är (inga parametrar krävs).
  3. Koppla Manual Execution Start till Retrieve Spreadsheet Rows för att starta datahämtningen.

Steg 2: Anslut Google Sheets

Hämta produkttitlar från ett kalkylark som driver snapshot-förfrågningarna.

  1. Öppna Retrieve Spreadsheet Rows och välj Google Sheets-filen.
  2. Ställ in Document[YOUR_ID] och Sheetgid=0.
  3. Inloggningsuppgifter krävs: Anslut era googleSheetsOAuth2Api-inloggningsuppgifter.
  4. Koppla Retrieve Spreadsheet Rows till Iterate Records Batch för att bearbeta objekt ett i taget.

Om ert ark har en rubrikrad, säkerställ att kolumnen för titlar heter title så att Request Snapshot Filter kan använda {{$json.title}}.

Steg 3: Konfigurera hämtning av Bright Data-snapshot

Begär en filtrerad marknadsplats-snapshot, polla tills den är klar och hämta sedan datan.

  1. I Request Snapshot Filter, ställ in Dataset[YOUR_ID].
  2. Ställ in Filters Group={"operator":"and","filters":[{"name":"title","operator":"includes","value":"{{$json.title}}"},{"name":"item_price","operator":"is_not_null"}]}.
  3. Inloggningsuppgifter krävs: Anslut era brightdataApi-inloggningsuppgifter i Request Snapshot Filter, Fetch Snapshot Status och Retrieve Snapshot Data.
  4. I Pause Before Polling, ställ in Amount30 (sekunder) för att vänta mellan statuskontrollerna.
  5. I Fetch Snapshot Status, ställ in Snapshot ID{{ $json.snapshot_id }}.
  6. I Verify Snapshot State, säkerställ att villkoret kontrollerar Status med {{ $json.status }} notEquals running.
  7. I Detect Snapshot Errors, säkerställ att villkoret kontrollerar Status med {{ $json.status }} equals failed.
  8. I Retrieve Snapshot Data, ställ in Snapshot ID{{ $('Request Snapshot Filter').item.json.snapshot_id }}.

⚠️ Vanlig fallgrop: Om ert dataset-id är fel i Request Snapshot Filter kommer snapshoten aldrig att bli klar och pollningsloopen fortsätter i all oändlighet.

Steg 4: Validera och förbered snapshot-data

Validera snapshot-strukturen och extrahera endast de fält som används i AI-sammanfattningen.

  1. I Script: Validate Snapshot, behåll JavaScript-koden som kontrollerar Array.isArray($json.items).
  2. I Assess Snapshot Ready, bekräfta att villkoret använder {{ $json.isArray}} för att styra flödet.
  3. I Script: Extract Fields, behåll extraktionslogiken som matar ut price, seller_name, title och url.
  4. Säkerställ att Iterate Records Batch loopar igenom poster genom att koppla Dispatch Email Report och Set Error Notification tillbaka till den för fortsatt batchning.

Om era snapshot-utdatafält skiljer sig, uppdatera mappningen i Script: Extract Fields så att den matchar datasetets schema.

Steg 5: Konfigurera generering av AI-sammanfattning

Använd Gemini för att analysera de extraherade annonserna och skapa en Markdown-sammanfattning.

  1. Öppna Generate Price Summary och ställ in Text{{$json}}.
  2. Behåll promptinnehållet i Generate Price Summary så att modellen rankar de 20 källorna med lägst pris.
  3. Öppna Gemini Chat Engine och ställ in Model Namemodels/gemini-2.0-flash.
  4. Inloggningsuppgifter krävs: Anslut era googlePalmApi-inloggningsuppgifter i Gemini Chat Engine (det här är språkmodellen för Generate Price Summary).

Steg 6: Konfigurera e-postutskicket

Konvertera AI-utdata till HTML, omslut den med styling och skicka rapporten.

  1. I Convert Markdown HTML, ställ in ModemarkdownToHtml och Markdown{{ $json.text }}.
  2. I Compose HTML Wrapper, behåll HTML-omslagskoden så att e-postmeddelandet får konsekvent styling.
  3. I Dispatch Email Report, ställ in HTML{{ $json.html }}.
  4. Ställ in Subject=Your N8N report about {{ $('Iterate Records Batch').item.json.title }}.
  5. Ställ in To Email och From Email[YOUR_EMAIL].
  6. Inloggningsuppgifter krävs: Anslut era smtp-inloggningsuppgifter i Dispatch Email Report.

Steg 7: Lägg till felhantering

Fånga misslyckade snapshots och loopa till nästa post med ett meddelande.

  1. I Set Error Notification, behåll meddelandetilldelningen satt till =Bright Data snapshot error for item "{{ $('Iterate Records Batch').item.json.title }}": {{ $('Fetch Snapshot Status').item.json.warning }}.
  2. Säkerställ att Detect Snapshot Errors routar fel till Set Error Notification.
  3. Verifiera att Set Error Notification kopplas tillbaka till Iterate Records Batch så att arbetsflödet fortsätter med nästa rad.

⚠️ Vanlig fallgrop: Om villkoren i Verify Snapshot State och Detect Snapshot Errors ändras kan pollningsloopen gå sönder eller hoppa över felhantering.

Steg 8: Testa och aktivera ert arbetsflöde

Kör ett manuellt test för att verifiera datahämtning, AI-utdata och e-postleverans innan ni aktiverar.

  1. Klicka på Execute Workflow från Manual Execution Start för att köra ett test.
  2. Bekräfta att Request Snapshot Filter returnerar ett snapshot_id och att pollningen slutförs i Fetch Snapshot Status.
  3. Kontrollera att Dispatch Email Report skickar ett e-postmeddelande med formaterat HTML-innehåll och ett ämne som innehåller produkttiteln.
  4. När ni är nöjda, 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

  • Bright Data-inloggningsuppgifter kan löpa ut eller så kan dataset-åtkomst vara begränsad. Om det slutar fungera, kontrollera först åtkomst i din Bright Data-workspace och tokenstatus.
  • Om du använder Wait-noder eller extern snapshot-bearbetning varierar tiderna. Öka väntetiden om nedströmsnoder fallerar för att snapshot-innehållet fortfarande är tomt.
  • Standardprompter i AI-noder är generiska. Lägg in er tonalitet tidigt, annars kommer du att redigera utdata i all evighet.

Vanliga frågor

Hur lång tid tar det att sätta upp den här automatiseringen av prisrapporter?

Räkna med ungefär en timme om dina Bright Data- och Google-konton är redo.

Behöver jag kunna koda för att automatisera rapportering av konkurrentpriser?

Nej. Du kopplar främst konton och klistrar in API-nycklar. Det finns Code-noder i arbetsflödet, men du kan köra det som det är utan att redigera dem.

Är n8n gratis att använda för det här arbetsflödet för automatisering av prisrapporter?

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 Bright Data-användning och kostnader för Gemini API.

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

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

Kan jag anpassa det här arbetsflödet för automatisering av prisrapporter för delvisa matchningar i stället för skiftlägeskänsliga titlar?

Ja, men då vill du ändra Bright Data-filterförfrågan och extraheringslogiken tillsammans så att resultaten inte blir brusiga. Många team går från skiftlägeskänslig matchning till ett normaliserat titelfält (gemener, trimmat) och lägger sedan till en regel för ”minsta likhet” innan objekt skickas till Gemini. Du kan också begränsa antal resultat per säljare, exkludera marknadsplatser du inte vill ha och justera regeln ”topp 20 billigaste” till ”topp 10 plus bäst betygsatta” om det ligger närmare dina inköpskriterier.

Varför misslyckas min Bright Data-anslutning i den här automatiseringen av prisrapporter?

Oftast beror det på en utgången token eller saknade dataset-behörigheter i Bright Data. Det andra vanliga problemet är att snapshottet aldrig når läget ”klart”, vilket kan hända om filtret inte ger några träffar eller om datasetet är hårt belastat. Kontrollera också skiftläget i dina produkttitlar, eftersom en mismatch kan ge ”giltiga” tomma resultat som senare ser ut som att arbetsflödet har gått sönder.

Hur många produkter klarar den här automatiseringen av prisrapporter?

Dussintals per körning är realistiskt för de flesta små team.

Är den här automatiseringen av prisrapporter bättre än att använda Zapier eller Make?

För just det här jobbet är n8n oftast bättre, eftersom arbetsflödet behöver loopar, väntan/pollning, felspår och lite transformation innan AI-sammanfattningen. Zapier och Make kan göra delar av det, men mönstret ”polla tills snapshottet är klart, och fortsätt sedan” kan bli krångligt och dyrt i volym. n8n ger dig också möjligheten att köra med egen hosting, vilket spelar roll när du kör det ofta. Om du bara behöver en enkel ”skicka ett mejl när en cell ändras” funkar de verktygen bra. Prata med en automationsspecialist om du vill ha hjälp att välja den enklaste lösningen.

När detta väl rullar blir konkurrentbevakning en bakgrundsuppgift i stället för en punkt i kalendern. Du får korrekt formaterade indata, konsekventa utdata och prisbeslut som tas i tid.

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