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 + Linear: bloggutkast redo för granskning

Rickard Andersson Partner, Nodenordic.se

Din innehållsplan är oftast “organiserad” ända fram till att skrivandet börjar. Sedan blir det flikar, halvfärdiga dokument och ett Google Sheet som ingen uppdaterar. Utkast skapas, men statusen fastnar på PLANNED, och plötsligt publicerar ni innehåll baserat på magkänsla i stället för ett system.

Den här Sheets Linear automation träffar Content Leads först, eftersom det är de som jagar uppdateringar. Men Marketing Managers och byråägare känner av det också när granskningsrundor drar ut på tiden och kalendern börjar halka. Resultatet är enkelt: ditt strategisheet förblir korrekt samtidigt som utkast skapas i Linear, redo för granskning.

Nedan ser du hur flödet fungerar, vad det automatiserar och vad du ska kontrollera när något inte synkar som du förväntar dig.

Så fungerar den här automationen

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

n8n Workflow Template: Google Sheets + Linear: bloggutkast redo för granskning

Varför det här spelar roll: din bloggplan blir snabbt inaktuell

Ett Google Sheet är ett utmärkt ställe att planera ämnen. Det är ett uselt ställe att hantera verkligheten. I samma stund som en skribent börjar researcha blir ert “enkla” flöde utspritt: en brief på ett ställe, utkasttext på ett annat och en task-tracker som kanske (eller kanske inte) speglar det som faktiskt skrivits. Du tappar tid på statusuppdateringar och du tappar förtroende för planen eftersom den alltid ligger efter. Det värsta: du märker det först på veckomötet om innehåll, när alla försöker minnas vad som hände.

Det växer snabbt. Här är var det oftast fallerar.

  • Skribenter skapar utkast i slumpmässiga dokument, så redaktörer kan inte granska i en konsekvent kö.
  • Statusfält i Google Sheets uppdateras inte, vilket gör att du fortsätter tilldela ämnen som redan är påbörjade.
  • Content ops lägger ofta cirka 2 timmar i veckan bara på att stämma av “vad som är planerat” mot “vad som faktiskt finns”.
  • När ni skalar produktionen smyger duplicerade ämnen in eftersom det inte finns något pålitligt “redan skrivet”-register.

Det du bygger: en plan-till-utkast-pipeline som uppdaterar sig själv

Det här arbetsflödet gör ditt strategisheet för innehåll till ett faktiskt produktionssystem. Enligt schema (eller när du triggar manuellt) kontrollerar n8n din strategitabell i Google Sheets för att hitta nästa ämne markerat som PLANNED. Det tittar även i Linear för att se vilka utkast-issues som redan finns, så att du inte skapar samma artikel två gånger. När den väljer nästa prioriterade ämne samlar en AI-researchagent in konkurrenskontext och viktiga datapunkter, och lämnar sedan briefen till en skrivagent som producerar ett komplett, SEO-optimerat utkast. Till sist skapar flödet ett Linear-issue med hela utkastinnehållet och uppdaterar statusen i Google Sheet så att planen speglar verkligheten. Om du vill ha notifieringar kan Slack pinga teamet så fort ett utkast är klart.

Flödet startar enligt ett veckoschema (måndag till onsdag som standard). Därifrån stämmer det av Google Sheets och Linear, och kör sedan research och skrivning som separata AI-steg. Resultatet blir ett nytt utkast-issue i Linear plus en uppdaterad rad i ditt sheet, så att granskning och planering håller ihop.

Det du bygger

Förväntade resultat

Säg att ni publicerar 3 inlägg i veckan och hanterar allt manuellt: välj ämne (10 minuter), bekräfta att det inte är en dubblett (15 minuter), skapa en uppgift i Linear (10 minuter), uppdatera Google Sheet (5 minuter) och meddela teamet i Slack (5 minuter). Det är ungefär 45 minuter per inlägg, eller lite över 2 timmar i veckan, innan något skrivande ens börjar. Med det här flödet är “admin”-delen i princip bara triggen plus en snabb genomläsning när Slack säger att utkastet är klart. De flesta team får tillbaka de där 2 timmarna och minskar dessutom de irriterande statusmissarna som leder till omarbete.

Innan du börjar

  • n8n-instans (prova n8n Cloud gratis)
  • Alternativ för egen hosting om du föredrar det (Hostinger fungerar bra)
  • Google Sheets för din ämnesplan och statusar.
  • Linear för att lagra utkast-issues och köra granskningar.
  • Slack för att notifiera redaktörer när utkast landar.
  • Anthropic- eller OpenAI-API-nyckel (hämta den från din modellproviders dashboard).

Svårighetsgrad: Mellan. Du kopplar ihop några konton, mappar fält mellan verktyg och testar med ett ämne innan du låter det rulla veckovis.

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

Steg för steg

En veckotrigg (eller en manuell chatt-trigg) drar igång. Schemat är satt till måndag, tisdag och onsdag så att innehållsproduktionen håller en jämn takt utan att någon behöver komma ihåg att “köra processen”. Om du föredrar kan du också starta den vid begäran via chatt.

Ditt strategisheet läses in och stäms av mot Linear. n8n hämtar rader från Google Sheets för att hitta ämnen i PLANNED, och frågar sedan Linear för att se vad som redan har utkastats. Om ett utkast finns uppdaterar flödet sheet-statusen så att planen speglar verkligheten.

AI-research först, sedan skrivning. En researchagent samlar konkurrenskontext och viktiga datapunkter (med begränsade crawl-anrop för att hålla det effektivt), och därefter gör en skrivagent om briefen till ett komplett bloggutkast med metadata, struktur och positionering i linje med ditt varumärke.

Ett Linear-utkast-issue skapas och teamet blir notifierat. Hela utkastet hamnar i Linear så att redaktörer kan granska på samma ställe där de redan hanterar arbete. Slack kan larma kanalen så fort issuet skapas, så att utkast inte tyst börjar staplas på hög.

Du kan enkelt justera publiceringstakten eller vilken status som räknas som “redo” utifrån dina behov. Se hela implementationsguiden nedan för anpassningsalternativ.

Steg-för-steg-guide för implementation

Steg 1: Konfigurera den schemalagda triggern

Det här arbetsflödet startar enligt ett schema och kan även initieras via chatt. Konfigurera den schemalagda körningen först och bekräfta sedan inmatningsvägen för chatt-triggern.

  1. Öppna Scheduled Automation Trigger och ställ in schemaregeln till veckovis med triggerAtDay-värdena 1, 2 och 3.
  2. Säkerställ att Scheduled Automation Trigger är kopplad till Content Status Manager på huvudutgången.
  3. Granska Incoming Chat Trigger och behåll webhook-ID:t som konfigurerat, och bekräfta sedan att den är kopplad till Content Research Agent.

Tips: Den schemalagda vägen och chattvägen matar båda in i Content Research Agent (direkt eller via Content Status Manager), så säkerställ att båda kopplingarna är aktiva.

Steg 2: Anslut Google Sheets

Tre Google Sheets-verktygsnoder hanterar strategistatus och SEO-rapportdata som innehållshanteraren använder.

  1. Öppna Fetch Strategy Rows och ställ in Document till Trigify SEO Report och Sheet till Strategy_State. Inloggning krävs: Anslut era googleSheetsOAuth2Api-uppgifter.
  2. Öppna Retrieve SEO Rows och ställ in Document till Trigify SEO Report och Sheet till SEO Report. Inloggning krävs: Anslut era googleSheetsOAuth2Api-uppgifter.
  3. Öppna Update Sheet Row och låt Operation vara inställt på appendOrUpdate.
  4. I Update Sheet Row, ställ in Sheet till Strategy_State och behåll Matching Columns som current_pillar för att uppdatera rätt rad. Inloggning krävs: Anslut era googleSheetsOAuth2Api-uppgifter.
  5. Verifiera att kolumnmappningarna i Update Sheet Row är definierade med uttryck som {{ /*n8n-auto-generated-fromAI-override*/ $fromAI('notes', ``, 'string') }} för varje mappat fält.

⚠️ Vanlig fallgrop: Om kolumnen current_pillar saknas eller har bytt namn i arket kan Update Sheet Row inte matcha rader och kommer att lägga till dubbletter.

Steg 3: Konfigurera AI-språkmodeller och agenter

Arbetsflödet bygger på flera LLM:er och agentnoder. Koppla inloggningsuppgifter till språkmodellsnoderna och bekräfta agentprompter och indata.

  1. Öppna Anthropic Chat Engine och ställ in modellen till claude-sonnet-4-5-20250929. Inloggning krävs: Anslut era anthropicApi-uppgifter.
  2. Öppna Anthropic Chat Engine A och behåll modellen inställd på claude-sonnet-4-5-20250929. Inloggning krävs: Anslut era anthropicApi-uppgifter.
  3. Öppna Anthropic Chat Engine B och behåll modellen inställd på claude-opus-4-5-20251101. Inloggning krävs: Anslut era anthropicApi-uppgifter.
  4. Öppna OpenAI Chat Engine och ställ in modellen till gpt-5-2025-08-07. Inloggning krävs: Anslut era openAiApi-uppgifter.
  5. I Content Status Manager, behåll Text inställt på Run task. och säkerställ att den är kopplad till Content Research Agent.
  6. I Content Research Agent, ställ in Text till {{ $json.output }}{{ $json.chatInput }} och verifiera att den är kopplad till Blog Author Agent.
  7. I Blog Author Agent, ställ in Text till {{ $json.output }} och låt needsFallback vara aktiverat.

Tips: Anthropic Chat Engine, Anthropic Chat Engine A, Anthropic Chat Engine B och OpenAI Chat Engine är länkade som språkmodeller till agentnoderna. Säkerställ att inloggningsuppgifterna läggs till på LLM-noderna, inte på agentnoderna.

Steg 4: Konfigurera verktyg för research och resonemang

Agenterna förlitar sig på MCP-verktyg, resonemangsverktyg och HTTP-verktyg för research och statuskontroller. Dessa är kopplade som AI-verktyg till de överordnade agenterna.

  1. Öppna Firecrawl MCP Tool och ställ in Endpoint URL till https://mcp.firecrawl.dev/[YOUR_ID]/v2/mcp. Lägg till inloggningsuppgifter för Firecrawl i den överordnade agenten där verktyget används (Blog Author Agent).
  2. Öppna Firecrawl MCP Tool A och ställ in Endpoint URL till https://mcp.firecrawl.dev/[YOUR_ID]/v2/mcp. Lägg till inloggningsuppgifter för Firecrawl i den överordnade agenten där verktyget används (Content Research Agent).
  3. Öppna Retrieve Linear Issues och ställ in URL till https://api.linear.app/graphql, Method till POST och inkludera rubriken Authorization med er token. Det här verktyget är kopplat till Content Status Manager, så lägg till inloggningsuppgifter/token i HTTP-verktygets konfiguration.
  4. Låt Reasoning Step och Reasoning Step A ligga kvar som AI-resoneringsverktyg; de är kopplade till Content Research Agent respektive Content Status Manager.

⚠️ Vanlig fallgrop: Firecrawl MCP Tool och Firecrawl MCP Tool A har inga inloggningsuppgifter konfigurerade. Säkerställ att inloggningsuppgifterna läggs till i den överordnade agentens verktygskonfiguration, inte i själva verktygsnoden.

Steg 5: Konfigurera utdata-/åtgärdsnoder

Utdata inkluderar att skapa Linear-ärenden och uppdatera strategistatus i Google Sheets baserat på research- och skrivresultat.

  1. Öppna Linear Issue Creator och ställ in Title till {{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Title', ``, 'string') }} och Team ID till ert Linear-team-ID. Inloggning krävs: Anslut era linearApi-uppgifter.
  2. I Linear Issue Creator, behåll Description inställt på {{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Description', ``, 'string') }} så att agenten skriver hela bloggen i ärendet.
  3. Bekräfta att Update Sheet Row fortfarande är kopplad som ett AI-verktyg till Content Status Manager för statusuppdateringar.

Tips: Blog Author Agent använder Linear Issue Creator för att lagra hela artikeln. Säkerställ att agentprompten förblir intakt så att den output:ar hela blogginlägget.

Steg 6: Testa och aktivera ert arbetsflöde

Kör ett manuellt test för både den schemalagda vägen och den chattdrivna vägen och aktivera sedan för löpande automatisering.

  1. Klicka på Execute Workflow för att simulera den schemalagda vägen som startar från Scheduled Automation Trigger och bekräfta att data flödar till Content Status Manager och därefter Content Research Agent.
  2. Trigga Incoming Chat Trigger med en testinmatning i chatten och verifiera att Content Research Agent output:ar en brief som når Blog Author Agent.
  3. Bekräfta att en lyckad körning skapar ett Linear-ärende via Linear Issue Creator och uppdaterar Google Sheets via Update Sheet Row.
  4. När allt är verifierat, ställ in arbetsflödet till Active så att Scheduled Automation Trigger körs automatiskt varje vecka.
🔒

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

Få den kompletta implementeringsguiden + nedladdningsbar mall

Felsökningstips

  • Google Sheets-autentisering kan löpa ut eller kräva specifika behörigheter. Om något slutar fungera, kontrollera först Google-kopplingen i n8n under fliken Credentials och bekräfta sedan att sheetet är delat med samma Google-konto.
  • Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om efterföljande noder fallerar på tomma svar.
  • Standardprompter 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 Sheets Linear automation?

Cirka en timme om fälten i Sheets och Linear redan är bestämda.

Krävs det kodning för den här automationen för bloggutkast?

Nej. Du kopplar ihop konton och mappar några fält mellan Google Sheets och Linear.

Är n8n gratis att använda för det här arbetsflödet med Sheets Linear automation?

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 API-kostnader för AI-modellen, vilket oftast är några cent per utkast beroende på längd.

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 egen hosting på en VPS. För egen hosting är Hostinger VPS prisvärd och hanterar n8n bra. Egen hosting ger obegränsade körningar men kräver grundläggande serverhantering.

Kan jag anpassa det här arbetsflödet för Sheets Linear automation för andra användningsfall?

Ja, och det bör du förmodligen. Du kan byta Scheduled Automation Trigger mot Incoming Chat Trigger om du vill generera utkast vid begäran, och du kan ändra vad Content Status Manager räknar som “redo” genom att justera statusmappningen och steget Google Sheets Update Sheet Row. Vanliga justeringar är att lägga till en “Editor”-ansvarig i Linear, bara skriva kortare klusterinlägg och skicka Slack-notiser till olika kanaler baserat på ämneskategori.

Varför misslyckas min Linear-anslutning i det här flödet?

Oftast är det ett problem med API-token eller saknade scope-behörigheter för att skapa issues. Skapa en ny Linear API-nyckel, uppdatera den i n8n och bekräfta att den har åtkomst till teamet och projektet du skriver till. Kontrollera också Linear workspace slug eller team-ID som används i steget HTTP Request, eftersom ett kopierat värde från en annan workspace kan “se rätt ut” och ändå fallera.

Vilken volym kan det här arbetsflödet för Sheets Linear automation hantera?

På n8n Cloud Starter kan du vanligtvis köra en veckovis innehållspipeline utan problem, och egen hosting tar bort körningsbegränsningar helt. I praktiken är flaskhalsen AI-genereringstid och redaktionens granskningskapacitet, inte n8n. Om du försöker generera dussintals utkast i en och samma körning kan du slå i providers rate limits, så det är smartare att batcha ämnen.

Är den här Sheets Linear automation bättre än att använda Zapier eller Make?

Ofta, ja. Det här flödet bygger på logik i flera steg (kontrollera befintliga Linear-issues, uppdatera sheet-status, förgrena när allt är klart och sedan köra research och skrivning), och n8n hanterar den typen av förgrening utan att din faktura blir ett matteproblem. Du får också möjligheten att hosta själv, vilket spelar roll när du kör frekventa utkast eller flera varumärken. Zapier eller Make kan fortfarande fungera för ett lätt “skapa issue från rad”-flöde, men de blir klumpiga när du lägger till agenter, research-anrop och tillståndshantering. Prata med en automationsexpert om du är osäker på vad som passar.

När detta väl rullar slutar ditt sheet att vara en kyrkogård för “planerade” idéer och blir en riktig produktionsdashboard. Flödet tar hand om grovjobbet så att teamet kan fokusera på granskning och publicering.

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