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

Bright data till Google Sheets: priserna hålls aktuella

Rickard Andersson Partner, Nodenordic.se

Att kontrollera konkurrentpriser manuellt låter enkelt tills det är tisdag, du jonglerar fem flikar per SKU och den ”snabba kontrollen” blir ett rörigt kalkylark du inte riktigt litar på. Missar du en prissänkning en dag märker du det den hårda vägen, oftast först efter att försäljningen börjar bromsa.

Det här med automatiserad prisbevakning slår hårdast mot e-handelschefer, men produktmarknadsförare och revenue ops-ansvariga känner av det också. Du får daglig, strukturerad prisinformation i Google Sheets, plus Slack- och e-postvarningar när en konkurrent går under ditt pris mer än din tröskel tillåter.

Nedan ser du exakt hur flödet körs, vad det ersätter och vad du behöver för att sätta upp det i n8n utan att göra det till ett tekniskt projekt.

Så här fungerar automatiseringen

Se hur detta löser problemet:

n8n Workflow Template: Bright data till Google Sheets: priserna hålls aktuella

Utmaningen: att hålla konkurrentpriser uppdaterade utan onödigt merjobb

Konkurrensanalys av prissättning faller isär på tråkiga, dyra sätt. Du öppnar en lista med konkurrenternas produktsidor, kopierar priser till ett ark och säger till dig själv att du ska ”göra det dagligen”, ända tills mötena staplas och det blir veckovis. Då reagerar du i stället för att fatta beslut. Och eftersom konkurrenters sajter formaterar priser olika (kampanjbanderoller, paket, ”från X kr”, frakt inbakad) blir datan du fångar inkonsekvent, vilket gör trendanalys meningslös. Ärligt talat är det värsta den mentala belastningen. Du är aldrig säker på om du tittar på dagens verklighet eller förra veckans.

Det blir snabbt mycket. Här är var det oftast brister i den dagliga driften.

  • Manuella kontroller blir en återkommande kalenderuppgift som i tysthet stjäl cirka 2 timmar i veckan.
  • En missad prisunderbud kan ligga kvar i flera dagar eftersom ingen blir notifierad i det ögonblick det faktiskt spelar roll.
  • Spårning via copy-paste skapar en stökig historik, så du kan inte säkert svara på ”är det här en trend eller en engångsgrej?”
  • Team bråkar om siffror eftersom källa och tidsstämpel inte fångas strukturerat.

Lösningen: automatiserad bevakning av konkurrentpriser med Bright Data och Google Sheets

Det här flödet körs på schema (som standard varje dag kl. 09.00) och gör prischeckarna åt dig. Det startar med din lista över konkurrenternas produkt-URL:er och din egen referens för ”aktuellt pris”. För varje konkurrent-sida skickar n8n ett scraping-jobb till Bright Datas Web Scraper API, väntar på att det blir klart, hämtar sedan resultatet och extraherar priset även när webbplatsens layout skiljer sig. Därefter beräknar det nyckeltalen du faktiskt bryr dig om, som skillnaden mellan ditt pris och deras, och loggar varje kontroll i Google Sheets så att du automatiskt bygger en korrekt formaterad historik. Om en konkurrent är tydligt billigare än du (utifrån din tröskel) skickas en varning till Slack och ett e-postmeddelande så att rätt personer ser det direkt. När körningen är klar genererar flödet en daglig sammanfattningsrapport och postar även den i Slack.

Flödet börjar med en tidsstyrd trigger och loopar sedan igenom varje konkurrent-URL i batchar. Bright Data hanterar scraping-livscykeln och n8n hanterar jämförelselogik, loggning och varningar. Till sist får Slack både ”något har ändrats”-varningar och den dagliga sammanfattningen.

Vad som förändras: före vs. efter

Effekt i praktiken

Säg att du följer 12 konkurrent-URL:er för en handfull viktiga SKU:er. Manuellt kan du lägga ungefär 5 minuter per URL mellan sidladdningar, rabattberäkningar och uppdatering av arket, vilket är cirka en timme per körning. Gör du det fem dagar i veckan landar du nära 5 timmar repetitivt arbete. Med den här automatiseringen är ”mänsklig tid” närmare 10 minuter: du granskar Slack-sammanfattningen och agerar bara på underbudsvarningarna, medan Google Sheets loggar resten i bakgrunden.

Krav

  • n8n-instans (prova n8n Cloud gratis)
  • Alternativ för egen drift om du föredrar det (Hostinger fungerar bra)
  • Bright Data för API-åtkomst till web scraping.
  • Google Sheets för att lagra prishistorik och tidsstämplar.
  • Slack för snabba underbudsvarningar och dagliga sammanfattningar.
  • SMTP-e-postleverantör för att skicka reservvarningar.
  • Bright Data API-token (hämtas i Bright Data-dashboarden).

Svårighetsnivå: Medel. Du kopplar konton, klistrar in API-uppgifter och redigerar en kort lista med konkurrent-URL:er och tröskelvärden.

Behöver du hjälp att implementera detta? Prata med en automationsexpert (gratis 15-minuters konsultation).

Flödet steg för steg

Dagligt schema startar det. Kl. 09.00 (eller den tid du väljer) startar n8n en bevakningskörning automatiskt, så processen hänger inte på att någon kommer ihåg.

Din konkurrentlista laddas. Flödet hämtar en array med konkurrenternas produkt-URL:er tillsammans med ditt eget referenspris och en varningströskel (till exempel varna om de är mer än 10 % billigare).

Bright Data skrapar varje URL. n8n triggar ett scraping-jobb i Bright Data, väntar på resultatet, hämtar dataset-utdata och standardiserar sedan priset så att jämförelser inte påverkas av formateringsavvikelser.

Resultat loggas och utvärderas. Google Sheets får en ny rad för varje konkurrentkontroll, därefter avgör ett ”if”-villkor om underbudsregeln uppfylls. Om tröskeln överskrids skickas Slack- och e-postvarningar; annars fortsätter körningen i det tysta.

En daglig sammanfattning hamnar i Slack. På slutet aggregerar flödet utfall, genererar en sammanfattning (genomsnittliga skillnader, lägsta/högsta konkurrent) och publicerar en rapport så att teamet har en gemensam vy.

Du kan enkelt ändra listan med konkurrent-URL:er för att bevaka fler produkter, eller justera varningströskeln efter dina marginaler. Se den fullständiga implementationsguiden nedan för anpassningsalternativ.

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

Steg 1: konfigurera Schedule Trigger

Ställ in arbetsflödets schema så att prisövervakningen körs automatiskt.

  1. Lägg till eller öppna Timed Start Trigger.
  2. Definiera schemat under Rule så att det matchar önskat övervakningsintervall.
  3. Bekräfta att triggern är ansluten till Configure Rival Links enligt flödet.

Om ni vill köra vid en specifik tid, ställ in schemats intervall därefter för att undvika att missa marknadsförändringar.

Steg 2: anslut Google Sheets

Logga resultat till ett kalkylark för historik, uppföljning och analys.

  1. Öppna Record to Sheets och ställ in Operation till appendOrUpdate.
  2. Ställ in Document till [YOUR_ID] och Sheet till Price History.
  3. Bekräfta att kolumnmappningarna använder uttryck som {{ $json.competitorUrl }}, {{ $json.scrapedAt }} och {{ $json.priceDifference }}.
  4. Credential Required: Anslut era Google Sheets OAuth2-uppgifter.

⚠️ Vanlig fallgrop: Om ni lämnar [YOUR_ID] oförändrat kommer noden att misslyckas. Ersätt det med ert Google Sheet-ID.

Steg 3: konfigurera konkurrentinmatningar och iteration

Definiera konkurrentlistan, ert pris och larmtröskeln och iterera sedan igenom varje konkurrent.

  1. I Configure Rival Links ställer ni in competitors till JSON-arrayen med [{ "name": "Competitor A", "url": "...", "productName": "..." }].
  2. Ställ in ourPrice till 149.99 och alertThreshold till 10 (justera vid behov).
  3. Öppna Iterate Rival List för att säkerställa att den är ansluten från Configure Rival Links för batchbearbetning.
  4. Bekräfta att Iterate Rival List skickar vidare till Trigger Data Scraper och även matar ut till Combine All Outcomes när den är klar.

Se till att konkurrenternas URL:er är giltiga; trasiga länkar minskar täckningen och snedvrider er dagliga sammanställning.

Steg 4: konfigurera scraping och prisbearbetning

Trigga Bright Data-scrapern, vänta tills den är klar och beräkna sedan prismått utifrån resultaten.

  1. I Trigger Data Scraper ställer ni in URL till https://api.brightdata.com/datasets/v3/trigger och JSON Body till uttrycket { "dataset_id": "gd_l7q7dkf244hwjntr0", "endpoint": "https://api.brightdata.com/datasets/v3/snapshot/gd_l7q7dkf244hwjntr0?format=json", "url": "{{ $json.competitors[$itemIndex].url }}", "discover_new_sites": false }.
  2. Aktivera Send Body och Send Headers och säkerställ att Content-Type är application/json.
  3. Credential Required: Anslut era HTTP Header Auth-uppgifter i Trigger Data Scraper.
  4. I Pause for Scrape ställer ni in Amount till 10 för att ge scrapingen tid att slutföras.
  5. I Retrieve Scrape Results ställer ni in URL till {{ $json.snapshot_id ? 'https://api.brightdata.com/datasets/v3/snapshot/' + $json.snapshot_id + '?format=json' : 'https://api.brightdata.com/datasets/v3/progress/' + $json.snapshot_id }}.
  6. Credential Required: Anslut era HTTP Header Auth-uppgifter i Retrieve Scrape Results.
  7. Granska Compute Price Metrics för att säkerställa att JavaScript:et tolkar prisfälten och använder $('Configure Rival Links').item.json.ourPrice och $('Iterate Rival List').item.json.competitors[$itemIndex].

⚠️ Vanlig fallgrop: Om Bright Data dataset-ID:t ändras, uppdatera det i Trigger Data Scraper annars kommer arbetsflödet att returnera tomma resultat.

Steg 5: konfigurera larm, aggregering och daglig sammanfattning

Skicka larm i realtid för konkurrenter med lägre pris och publicera en daglig sammanfattningsrapport.

  1. I Evaluate Alert Criteria behåller ni villkoren inställda på att {{ $json.isUnderpriced }} är true och att {{ $json.percentageDiff }} är större än {{ $('Configure Rival Links').item.json.alertThreshold }}.
  2. Bekräfta parallell körning: Compute Price Metrics matar ut till Record to Sheets, Evaluate Alert Criteria och Iterate Rival List parallellt.
  3. Bekräfta parallell körning: Evaluate Alert Criteria matar ut till både Post Slack Warning och Dispatch Email Notice parallellt.
  4. I Post Slack Warning behåller ni larmmeddelandet med uttryck som {{ $json.competitorName }} och {{ $json.priceDifference }}.
  5. Credential Required: Anslut era Slack-uppgifter i Post Slack Warning.
  6. I Dispatch Email Notice ställer ni in Subject till Price Alert: {{ $json.competitorName }} - {{ $json.productName }} och uppdaterar To Email och From Email från [YOUR_EMAIL].
  7. Credential Required: Anslut era SMTP/Email Send-uppgifter i Dispatch Email Notice.
  8. Säkerställ att Combine All Outcomes aggregerar utfall innan Generate Daily Summary skapar rapporten och Publish Daily Slack Report publicerar den till Slack.
  9. Credential Required: Anslut era Slack-uppgifter i Publish Daily Slack Report.

Använd Flowpast Branding endast som en referensnotering—den här sticky note-lappen påverkar inte körningen.

Steg 6: testa och aktivera ert arbetsflöde

Kör ett manuellt test för att validera scraping, larm och loggning innan ni aktiverar schemat.

  1. Klicka på Execute Workflow för att köra Timed Start Trigger manuellt.
  2. Verifiera att Record to Sheets lägger till rader i arket Price History och inkluderar värden som competitorPrice och priceDifference.
  3. Bekräfta att larm visas i Slack från Post Slack Warning och att ett mejl skickas av Dispatch Email Notice när en konkurrent underprissätter er.
  4. Kontrollera att Publish Daily Slack Report publicerar den dagliga sammanfattningen efter att Generate Daily Summary har körts.
  5. När allt är validerat växlar ni arbetsflödet till Active så att Timed Start Trigger kör enligt schema.
🔒

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

Få den kompletta implementeringsguiden + nedladdningsbar mall

Se upp för

  • Bright Data-inloggningar kan löpa ut eller så kan ditt dataset vara felkonfigurerat. Om scraping plötsligt returnerar tom data, kontrollera först tokenstatus och dataset-ID i Bright Data-dashboarden.
  • Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om efterföljande noder fallerar på grund av tomma svar.
  • Slack-varningar kan misslyckas utan att det märks om appen tappar kanalbehörigheter. När meddelanden slutar dyka upp, bekräfta Slack-anslutningen i n8n och godkänn arbetsytan på nytt vid behov.

Vanliga frågor

Hur snabbt kan jag implementera den här automatiserade prisbevakningen?

Cirka 30–40 minuter om din åtkomst till Bright Data, Slack och Google redan är klar.

Kan icke-tekniska team implementera den här automatiserade prisbevakningen?

Ja. Du skriver ingen kod, men du kommer att klistra in API-uppgifter och underhålla en korrekt formaterad lista med konkurrent-URL:er.

Är n8n gratis att använda för det här flödet för automatiserad prisbevakning?

Ja. n8n har ett gratis alternativ för egen drift och en gratis provperiod på n8n Cloud. Cloud-planer börjar på 20 USD/månad för högre volym. Du behöver även räkna in Bright Data API-användning och eventuella kostnader för e-postleverantör.

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

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

Hur anpassar jag den här lösningen för automatiserad prisbevakning till mina specifika utmaningar?

Börja med steget ”Configure Rival Links” där konkurrent-URL:erna, ditt referenspris och tröskeln ligger. Om du vill ha en annan datadestination kan du byta steget ”Record to Sheets” till Microsoft Excel 365 eller Airtable utan att ändra scraping-logiken. Många team justerar också formatet på Slack-meddelandet i steget ”Post Slack Warning” så att det inkluderar SKU, marginalnoteringar eller en direktlänk till konkurrentens sida.

Varför fungerar inte min Bright Data-anslutning i det här flödet?

Oftast beror det på en ogiltig eller utgången API-token, eller att dataset-ID:t har ändrats i Bright Data. Uppdatera inloggningsuppgiften i n8n och kör sedan en enskild konkurrent-URL för att bekräfta att scrapern returnerar data. Om du skrapar många sidor samtidigt kan rate limiting också visa sig som timeouts eller tomma svar.

Vad är kapaciteten för den här lösningen för automatiserad prisbevakning?

Den skalar till dussintals eller hundratals URL:er, så länge du justerar batchning och väntetid för Bright Data-jobb.

Är den här automatiserade prisbevakningen bättre än att använda Zapier eller Make?

Ofta ja, eftersom detta inte är en enkel ”om pris, då notifiera”-uppgift. Du orkestrerar scraping-jobb, väntar på resultat, tolkar priser, skriver rader, grenar på en tröskel och genererar sedan en aggregerad dagsrapport. n8n hanterar den typen av flersteglogik på ett strukturerat sätt, och egen drift gör att du inte betalar per liten delsteg som många team i slutändan gör i Zapier. Zapier eller Make kan fortfarande fungera bra om du redan har en pålitlig prisfeed och bara behöver grundläggande routing till Slack. Om du är osäker, prata med en automationsexpert och mappa det mot din volym och budget.

När detta väl rullar blir konkurrentbevakning en snabb avstämning i stället för en daglig syssla. Flödet hanterar de repetitiva kontrollerna så att teamet kan fokusera på prissättningsbeslut som faktiskt driver intäkter.

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