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 + Slack: smartare X-omnämnanden

Rickard Andersson Partner, Nodenordic.se

Dina X- (Twitter-)omnämnanden kommer inte prydligt. De dyker upp som en rörig ström av åsikter, skärmdumpar, citat utan halva sammanhanget och ”är det här en kris?”-ögonblick som av någon anledning alltid landar när du redan har fullt upp.

Sheets Slack alerts löser det. Marknadschefer brukar känna av brandkårsutryckningen först, men grundare och kommunikationsansvariga hamnar i samma loop: scrolla, få panik, kopiera-klistra in, och sedan hoppas att du inte missade det enda inlägget som faktiskt spelar roll.

Det här arbetsflödet gör om nya tweet-rader i Google Sheets till en strukturerad sammanfattning för din vanliga Slack-kanal, plus separata brådskande aviseringar för det som kräver uppmärksamhet nu. Du får lära dig vad det gör, vad du behöver och hur du anpassar det till ditt varumärke.

Så fungerar den här automatiseringen

Här är det kompletta arbetsflödet du kommer att sätta upp:

n8n Workflow Template: Google Sheets + Slack: smartare X-omnämnanden

Varför det här är viktigt: brus från tweet-omnämnanden döljer verklig risk

Social bevakning låter enkelt tills du gör det på riktigt. Omnämnanden kommer i ryck, teamet skummar snabbt och de ”handlingsbara” försvinner mellan ofarligt snack och vag negativitet. Sedan ber någon om en daglig sammanfattning och plötsligt sitter du och syr ihop skärmdumpar, länkar och din egen tolkning i Slack. Det handlar inte bara om tid. Det är mental belastning. Du ifrågasätter vad du missade, och du kan inte bevisa att du hade koll när ledningen vill ha en snabb lägesbild.

Det blir snabbt mycket. Här är var det brukar fallera i de flesta team.

  • Nya tweets skannas i all hast, så samma sak dubbelkollas flera gånger under en dag.
  • Allt hamnar i en och samma kanal, vilket gör att brådskande frågor ser ut som vanligt brus.
  • Manuella sammanfattningar tar ungefär en timme på intensiva dagar, och missar ändå kontext från hela batchen.
  • Utan en ”bearbetad”-markering i arket kommer du antingen att dubbelavisera teamet eller tyst hoppa över saker.

Vad du bygger: sammanfattningar från Google Sheets till Slack plus brådskande aviseringar

Det här arbetsflödet fungerar som en analys- och larmmotor ovanpå din insamling av tweets. Enligt schema kontrollerar det ett Google Sheet som fylls med tweet-data (ofta från en Apify Tweet Scraper eller ett liknande scraping-verktyg). Det hämtar bara rader som inte har hanterats ännu genom att leta efter värdet ”Notmarked” i kolumnen action taken. Sedan buntar det ihop de nya tweetsen till en strukturerad prompt och skickar dem till en AI-modell (Google Gemini i det här flödet) för att skapa två saker: en lättläst sammanfattning och en maskinläsbar JSON-lista med brådskande ärenden. Därefter publicerar flödet sammanfattningen på en vanlig Slack-kanal och skickar varje brådskande punkt som ett eget meddelande till en högprioriterad Slack-kanal så att inget kritiskt begravs.

Arbetsflödet startar med schemalagda triggers, filtrerar och aggregerar nya tweet-rader från Google Sheets. AI skapar en sammanfattning plus en ”brådskande”-lista, och Slack får två strömmar: en lugn briefing och en uppsättning fokuserade larm. Korrekt formaterat, konsekvent och repeterbart.

Det du bygger

Förväntade resultat

Säg att din scraper lägger in 60 nya omnämnanden i Google Sheets varje dag. Manuellt, även 1 minut per tweet för att skumma, bedöma brådska och klistra in kontext i Slack är ungefär en timme, och det är innan du skriver en sammanfattning. Med det här arbetsflödet lägger du ett par minuter på att bekräfta att arket fylls korrekt och väntar sedan medan Gemini genererar rapporten och Slack publicerar den. De flesta team får tillbaka den timmen på intensiva dagar, och det brådskande slutar försvinna i bruset.

Innan du börjar

  • n8n-instans (testa n8n Cloud gratis)
  • Självhostningsalternativ om du föredrar det (Hostinger fungerar bra)
  • Google Sheets för att lagra scrapade tweet-rader.
  • Slack för att ta emot sammanfattningar och brådskande aviseringar.
  • Google Gemini (PaLM) API-nyckel (hämta den från Google AI Studio / Google Cloud-uppgifter).

Kunskapsnivå: Nybörjare. Du kopplar konton, väljer rätt ark och klistrar in en API-nyckel.

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

Steg för steg

En schemalagd kontroll hämtar nya rader. Arbetsflödet körs enligt schema och tittar i ditt Google Sheet efter tweet-rader där kolumnen action taken fortfarande visar en obearbetad status (som ”Notmarked”).

Tweet-innehållet struktureras och kombineras. Det transformerar tweet-payloaden, begränsar batchen så att du inte överbelastar analysen och aggregerar flera tweets till ett briefing-liknande underlag som en AI-modell kan förstå.

AI skapar två utdata från samma batch. Gemini genererar en läsbar sammanfattning för människor, plus en separat JSON-lista för brådskande ärenden så att n8n kan routa dem en och en. Det finns också ett agent-/chain-steg i flödet som formar svaret till något konsekvent.

Slack får rätt budskap på rätt plats. Sammanfattningen går till din vanliga bevakningskanal, och sedan delas brådskande ärenden upp i individuella aviseringar och skickas till en Slack-kanal med högre prioritet för snabb respons.

Du kan enkelt justera reglerna för brådska och Slack-destinationerna efter dina behov. Se den fullständiga implementationsguiden nedan för anpassningsalternativ.

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

Steg 1: Konfigurera schematriggern

Det här arbetsflödet använder två scheman: ett för att samla in tweets och ett annat för att generera en daglig briefing.

  1. Öppna Scheduled Trigger A och ställ in regeln Interval till önskad insamlingstakt för tweets.
  2. Öppna Scheduled Trigger B och ställ in regeln Interval med Trigger at hour till 9 (eller er föredragna tid för daglig briefing).
  3. Bekräfta att Scheduled Trigger A är ansluten till Initialize Counter och att Scheduled Trigger B är ansluten till Retrieve Pending Rows.

Om ert arbetsflöde körs för ofta kan ni överväga att öka intervallet på Scheduled Trigger A för att minska API-användningen.

Steg 2: Anslut Google Sheets

Google Sheets lagrar råa tweets och analysresultat. Flera noder kräver samma autentiseringsuppgifter.

  1. Öppna Append Raw Sheet Row och välj rätt Document och Sheet så att det matchar [YOUR_ID] och Sheet1.
  2. Mappa fälten i Append Raw Sheet Row exakt som visas, inklusive URL{{ $json.url }} och next_cursor{{ $json.nextCursor }}.
  3. Öppna Append Analysis Row och säkerställ att Sheet är Sheet2 med kolumner som summary{{ $json.summary }} och date_analyzed{{ $now }}.
  4. Öppna Retrieve Pending Rows och bekräfta att filtret action taken är lika med Notmarked.
  5. Credential Required: Anslut era googleSheetsOAuth2Api-inloggningsuppgifter till Append Raw Sheet Row, Append Analysis Row, Retrieve Pending Rows och Fetch Tweets Tool.

⚠️ Vanlig fallgrop: Om sheet-ID:n eller namnen inte matchar kommer Fetch Tweets Tool inte att returnera några tweets till AI-agenten.

Steg 3: Konfigurera pipelinen för tweet-insamling

Det här steget samlar in tweets, transformerar payloaden och lägger till rådata i Google Sheets samtidigt som cursor-tillståndet hanteras.

  1. I Initialize Counter ställer ni in count till 1 och query till emergentlabs.
  2. I Set Cursor State ställer ni in counter till {{ $json.count }} och cursor till {{ $json['next cursor'] }}.
  3. Konfigurera Delay Execution för att styra takten innan API:et anropas.
  4. Öppna Tweet API Request och ställ in URL till https://api.twitterapi.io/twitter/tweet/advanced_search. Använd Query Parameters: query{{ $('Initialize Counter').item.json.query }}, queryTypeLatest, cursor{{ $json.cursor }}.
  5. Credential Required: Anslut era httpHeaderAuth-inloggningsuppgifter till Tweet API Request.
  6. Säkerställ att Transform Tweet Payload körs efter API-anropet för att dela upp tweets i enskilda objekt för Append Raw Sheet Row.
  7. Bekräfta räknarloopen: Prepare IncrementIncrement Counter ScriptStore Count CursorSet Cursor State.

Arbetsflödet använder flera code-noder (inklusive Transform Tweet Payload och Increment Counter Script)—kopiera deras script exakt för att undvika felaktigt formaterade items.

Steg 4: Konfigurera AI-baserad bearbetning av insikter

AI-analysen utförs av en agent som använder Gemini, och parsas sedan och lagras. Agenten använder även ett Google Sheets-verktyg.

  1. I Aggregate Content säkerställer ni att fieldToAggregate aggregerar Content till final.
  2. Bekräfta att Conditional Check utvärderar att {{ $('Set Cursor State').item.json.counter }} är lika med 1 före aggregering.
  3. Konfigurera Route If Data för att routa när {{ $json.Content }} inte finns och skicka till AI Insight Agent.
  4. I AI Insight Agent ska ni behålla prompten och systemmeddelandet oförändrade. Den använder verktyg för att hämta data och analysera sentiment, brådska och nyckelämnen.
  5. Credential Required: Anslut era googlePalmApi-inloggningsuppgifter till Gemini Chat Model (språkmodell för AI Insight Agent).
  6. För Fetch Tweets Tool, notera att det är ett AI-verktyg—inloggningsuppgifter ska läggas till i föräldranoden. Säkerställ att verktyget är kopplat till AI Insight Agent och använder rätt Google Sheets-dokument.
  7. Verifiera efterbearbetningskedjan: AI Insight AgentParse Analysis TextAppend Analysis Row.

⚠️ Vanlig fallgrop: Om Gemini Chat Model inte är ansluten kommer AI Insight Agent att fallera även om agentens prompt är korrekt.

Steg 5: Konfigurera strategy LLM chain och parallella utdata

Briefing-kedjan sammanfattar analyserade rader och tar fram åtgärdsbara alerts, och delar sedan upp i parallella spår.

  1. I Retrieve Pending Rows bekräftar ni att den bara hämtar rader där action taken är lika med Notmarked.
  2. I Compile Briefing Text behåller ni scriptet som bygger preparedText och rowsToUpdate.
  3. I Strategy LLM Chain säkerställer ni att prompten inkluderar {{ $json.preparedText }} och att batching är satt till 1.
  4. Credential Required: Anslut era googlePalmApi-inloggningsuppgifter till Gemini Chat Model B (språkmodell för Strategy LLM Chain).
  5. Strategy LLM Chain skickar utdata parallellt till både Extract Summary Text och Extract Alert JSON.

Om AI:ns utdataformat förändras, uppdatera Extract Summary Text och Extract Alert JSON så att de matchar avgränsaren --- ACTIONABLE TWEETS JSON --- och JSON-blocket.

Steg 6: Konfigurera Slack-notiser

Det här steget postar sammanfattningen till en Slack-kanal och brådskande alerts till en annan via batchbearbetning.

  1. I Post Summary to Slack ställer ni in Text till 📈 *Brand Sentry: Daily Strategic Briefing* 📈 *Generated on: {{ new Date().toLocaleString('en-IN', { timeZone: 'Asia/Kolkata' }) }}* {{ $json.summaryReport }}.
  2. Credential Required: Anslut era slackOAuth2Api-inloggningsuppgifter till Post Summary to Slack och välj rätt kanal.
  3. I Iterate Alerts behåller ni batchbearbetningen för att loopa igenom items som returneras från Extract Alert JSON.
  4. I Dispatch Urgent Alert behåller ni formatet på alert-meddelandet med {{ $json.urgency }}, {{ $json.reason }} och {{ $json.tweetId }}.
  5. Credential Required: Anslut era slackOAuth2Api-inloggningsuppgifter till Dispatch Urgent Alert och välj kanalen för brådskande meddelanden.

Steg 7: Testa och aktivera ert arbetsflöde

Kör arbetsflödet manuellt för att verifiera datainsamling, AI-analys och Slack-notiser innan ni aktiverar det i produktion.

  1. Klicka på Execute WorkflowScheduled Trigger A för att testa tweet-inhämtning och bekräfta att rader läggs till i Append Raw Sheet Row.
  2. Verifiera att AI Insight Agent producerar ett formaterat svar och att Append Analysis Row tar emot fält för sentiment, brådska och sammanfattning.
  3. Klicka på Execute WorkflowScheduled Trigger B för att testa briefing-flödet och kontrollera att Post Summary to Slack postar en formaterad rapport.
  4. Bekräfta att brådskande items flödar genom Extract Alert JSONIterate AlertsDispatch Urgent Alert.
  5. När allt fungerar, slå på arbetsflödet till Active så att båda schemana körs automatiskt.
🔒

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

Få den kompletta implementeringsguiden + nedladdningsbar mall

Tips för felsökning

  • Google Sheets-inloggningar kan gå ut eller sakna åtkomst till rätt fil. Om det skapar fel, kontrollera autentiseringsuppgiften i Google Sheets-noden och bekräfta att kalkylarket är delat med det kontot.
  • Om du använder Wait-noder eller extern hämtning varierar processingtiderna. Öka väntetiden om nedströmsnoder fallerar på tomma svar.
  • Standardprompter i AI-noder är generiska. Lägg in din varumärkesröst tidigt, annars kommer du att redigera utdata i all evighet.

Snabba svar

Hur lång tid tar det att sätta upp den här automatiseringen för Sheets Slack alerts?

Cirka 5–10 minuter om ditt ark och dina konton är redo.

Krävs kodning för den här aviseringen av tweet-omnämnanden?

Nej. Du väljer mest rätt Google Sheet, kopplar Slack och klistrar in din Gemini API-nyckel.

Är n8n gratis att använda för det här arbetsflödet för Sheets Slack alerts?

Ja. n8n har ett gratis självhostat 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 kostnader för användning av Google Gemini API.

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 självhosting på en VPS. För självhosting är Hostinger VPS prisvärd och klarar n8n bra. Självhosting ger dig obegränsat antal körningar men kräver grundläggande serverhantering.

Kan jag anpassa det här arbetsflödet för Sheets Slack alerts för andra användningsfall?

Ja, och det bör du. De flesta team börjar med att ändra filtret i Google Sheets ”Retrieve Pending Rows” (andra statusvärden), och justerar sedan Gemini-prompten så att ”brådskande” matchar ditt varumärkes riskregler. Du kan också byta Slack-kanalerna i ”Post Summary to Slack” och ”Dispatch Urgent Alert” för att routa per produktlinje, region eller kund. Om du vill analysera andra källor kan du mata in andra rader i samma steg ”Aggregate Content” och behålla resten.

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

Oftast handlar det om behörigheter. Bekräfta att Google-kontot i din n8n-autentiseringsuppgift kan öppna just det kalkylarket och att arkets namn matchar det du valde i noden. Kontrollera också att dina kolumner finns som förväntat (särskilt action taken), eftersom saknade rubriker kan se ut som ”ingen data” och stoppa aviseringar. Om det fungerade igår men inte idag löser ofta en ny autentisering av Google Sheets-uppgiften problemet.

Vilken volym kan det här arbetsflödet för Sheets Slack alerts hantera?

Mycket för de flesta små team. På n8n Cloud beror din månatliga körningsgräns på planen, och varje körning räknas som en exekvering. Om du självhostar finns inget hårt tak; det beror främst på din server och hur många tweet-rader du batchar in i varje AI-anrop. Praktiskt: börja med att begränsa varje körning till en hanterbar batch (till exempel några dussin rader) och öka sedan när du litar på prompterna och Slack-routningen.

Är den här automatiseringen för Sheets Slack alerts bättre än att använda Zapier eller Make?

Ofta, ja. Det här arbetsflödet bygger på logik i flera steg (filtrera obearbetade rader, aggregera, dela upp JSON till många meddelanden), vilket är där n8n ofta känns mindre trångt. Du får också möjligheten att självhosta för hög volym utan att betala per task på samma sätt. Zapier eller Make kan ändå fungera om du bara behöver ett enkelt flöde ”ny rad → skicka meddelande” och inte bryr dig om tolkning av brådskande ärenden. Om du är osäker, prata med en automationsexpert och beskriv din volym och dina kanaler.

När det här väl rullar slutar teamet ”bevaka” och börjar agera. Arbetsflödet sköter sortering och sammanfattning så att du kan fokusera på besluten.

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