Du sätter dig för att skriva ett kampanjutkast och fastnar direkt i det värsta: kopiera prompts, vänta på att AI:n blir klar, klistra in resultaten i ett kalkylark och sedan göra om samma sak för annonser, mejl och en kort text till en landningssida.
Den här Gemini Sheets-automationen slår hårdast mot marknadschefer, men även en småföretagare som bygger veckokampanjer och en byråansvarig som jonglerar kundgodkännanden känner av den. Du får flera kampanjutkast framtagna samtidigt och sedan samlade snyggt i Google Sheets för granskning.
Nedan ser du hur arbetsflödet kör parallella Gemini-uppgifter, väntar tills allt är klart och ger dig ett enda, konsekvent paket med copy som du faktiskt kan använda.
Så fungerar automatiseringen
Hela n8n-arbetsflödet, från trigger till slutligt resultat:
n8n Workflow Template: Google Gemini + Google Sheets: kampanjutkast snabbare
flowchart LR
subgraph sg0["Receive Work Order Flow"]
direction LR
n1@{ icon: "mdi:swap-horizontal", form: "rounded", label: "The Dispatcher", pos: "b", h: 48 }
n6@{ icon: "mdi:play-circle", form: "rounded", label: "Receive Work Order", pos: "b", h: 48 }
n7@{ icon: "mdi:brain", form: "rounded", label: "The AI Specialist", pos: "b", h: 48 }
n8@{ icon: "mdi:robot", form: "rounded", label: "Description Team", pos: "b", h: 48 }
n9@{ icon: "mdi:robot", form: "rounded", label: "Ad Copy Team", pos: "b", h: 48 }
n10@{ icon: "mdi:robot", form: "rounded", label: "Email Team", pos: "b", h: 48 }
n11@{ icon: "mdi:cog", form: "rounded", label: "Report Back to Manager", pos: "b", h: 48 }
n12["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/code.svg' width='40' height='40' /></div><br/>The Project Dashboard (Code)"]
n13@{ icon: "mdi:cog", form: "rounded", label: "Start Process", pos: "b", h: 48 }
n14@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Check Work Order Status", pos: "b", h: 48 }
n15@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Is Project Complete?", pos: "b", h: 48 }
n16["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>Resume Parent Workflow"]
n10 --> n11
n9 --> n11
n1 --> n8
n1 --> n9
n1 --> n10
n8 --> n11
n7 -.-> n8
n7 -.-> n9
n7 -.-> n10
n6 --> n14
n15 --> n16
n15 --> n13
n14 --> n1
n14 --> n12
n12 --> n15
end
subgraph sg1["Start Project Flow"]
direction LR
n0@{ icon: "mdi:play-circle", form: "rounded", label: "Start Project", pos: "b", h: 48 }
n2@{ icon: "mdi:swap-vertical", form: "rounded", label: "Split Out Tasks", pos: "b", h: 48 }
n3@{ icon: "mdi:swap-vertical", form: "rounded", label: "The Project Brief", pos: "b", h: 48 }
n4@{ icon: "mdi:cog", form: "rounded", label: "Wait for All Teams to Finish", pos: "b", h: 48 }
n5@{ icon: "mdi:cog", form: "rounded", label: "Assign Tasks to Teams", pos: "b", h: 48 }
n17@{ icon: "mdi:swap-vertical", form: "rounded", label: "Project Complete!", pos: "b", h: 48 }
n0 --> n3
n2 --> n5
n3 --> n2
n5 --> n4
n4 --> n17
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n6,n0 trigger
class n8,n9,n10 ai
class n7 aiModel
class n1,n14,n15 decision
class n16 api
class n12 code
classDef customIcon fill:none,stroke:none
class n12,n16 customIcon
Problemet: kampanjutkast fastnar i flaskhalsar på grund av väntetid
AI kan skriva mycket utkastcopy snabbt, men den “snabba” delen faller när du kör förfrågningar en i taget. Du promptar Gemini för en kampanjbeskrivning och väntar. Du promptar för annonsvarianter och väntar igen. Sedan mejlvinklar. Mer väntan, fler flikar, fler småändringar bara för att hålla allt konsekvent. Den verkliga kostnaden är inte bara tid. Det är den mentala belastningen i att hålla koll på vad som är klart, vad som fortfarande kör och vilken version som hör hemma i arket du delar med teamet eller kunden.
Friktionen ökar snabbt. Här är var det faller isär i verkligheten.
- Att skriva tre tillgångar i följd blir ett 30–60 minuters “väntrum” redan innan redigeringen börjar.
- Copy blir inkonsekvent eftersom du justerar prompts i farten och glömmer vad du ändrade.
- Resultat klistras in i fel rader eller dokumentversioner, vilket leder till jobbiga gransknings-trådar.
- Om en uppgift misslyckas märker du det ofta först på slutet, så du kör om arbete som du trodde var färdigt.
Lösningen: parallell Gemini-skrivning, samlad i ett ark
Det här n8n-arbetsflödet använder ett avancerat men väldigt praktiskt mönster: det “fläktar ut” flera skrivuppgifter samtidigt och “fläktar in” när varje uppgift är klar. Du startar ett projekt (manuellt, eller via webhook om du vill trigga det från ett annat system) och arbetsflödet bygger en projektbrief som varje AI-uppgift kan använda. Därifrån startar det flera underarbetsflöden parallellt, där varje fungerar som en specialist: en skriver en kampanjbeskrivning, en annan tar fram annonscopy och en tredje skriver ett utkast till outreach-mejl. Varje specialist rapporterar status tillbaka till en gemensam projektdashboard, så huvudflödet vet vad som är klart och vad som fortfarande kör. När allt är klart aggregeras resultaten och förbereds för att sparas i Google Sheets, redo för granskning och delning.
Arbetsflödet startar med en kampanjbrief och kör sedan Gemini-uppgifter samtidigt (i stället för sekventiellt). Det pausar tills alla uppgifter rapporterar att de är klara och levererar därefter ett samlat resultat som du kan lägga in i Google Sheets som en felfri, strukturerad uppsättning utkast.
Det du får: automation vs. resultat
| Vad det här arbetsflödet automatiserar | Resultat du får |
|---|---|
|
|
Exempel: så här ser det ut
Säg att du behöver tre tillgångar för varje kampanj: en kort beskrivning, 10 annonstexter och ett outreach-mejl. Manuellt kanske du lägger cirka 10 minuter på att prompta och finslipa varje tillgång, plus ytterligare 10 minuter på att kopiera in allt i Google Sheets, alltså ungefär 40 minuter per kampanj. Med det här arbetsflödet startar du det på en minut, de tre Gemini-uppgifterna kör parallellt och du väntar typiskt 10–15 minuter på den långsammaste. Sedan klistrar du in en enda felfri resultatuppsättning i arket (eller bygger ut så att det skriver direkt), så du hamnar närmare 15–20 minuter totalt.
Det du behöver
- n8n-instans (prova n8n Cloud gratis)
- Self-hosting-alternativ om du föredrar det (Hostinger fungerar bra)
- Google Gemini för att generera kampanjutkasten
- Google Sheets för att samla, granska och dela utdata
- Gemini API / Google AI-inloggningsuppgifter (hämta från Google Cloud Console)
Svårighetsnivå: Medel. Du kopplar in autentisering och finjusterar prompts och fält utan att skriva mycket kod.
Vill du inte sätta upp det här själv? Prata med en automationsexpert (gratis 15-minuters konsultation).
Så fungerar det
Ett kampanj-“start”-event sätter igång det. Du kan köra det från Manual Launch Trigger för att skriva utkast vid begäran, eller anpassa det så att det startar från en webhook när en ny kampanjbrief skickas in.
Briefen standardiseras. En Project Brief Builder formar dina input till samma struktur varje gång, vilket gör utdata lättare att jämföra och enklare att godkänna.
Arbetsordrar fläktas ut till specialiserade AI-agenter. Arbetsflödet expanderar uppgiftslistan, kör underarbetsflödet flera gånger och routar varje arbetsorder till rätt Gemini-agent (beskrivning, annonscopy eller outreach-mejl). Varje agent slutför oberoende och rapporterar sedan status tillbaka till en gemensam “projektstatuskonsol”.
Allt slås ihop när alla uppgifter är klara. En Wait-nod pausar huvudflödet tills kontroller bekräftar att varje arbetsorder är färdig, och därefter aggregeras resultaten till ett slutligt utdata som du kan lagra i Google Sheets.
Du kan enkelt ändra antalet utkasttyper (till exempel lägga till sociala captions) för att matcha din kampanjprocess. Se hela implementeringsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementering
Steg 1: Konfigurera den manuella triggern
Det här arbetsflödet startar vid behov och bygger en projektbrief innan uppgifter skickas ut.
- Lägg till noden Manual Launch Trigger som er startpunkt.
- Koppla Manual Launch Trigger till Project Brief Builder.
- I Project Brief Builder, ställ in tasks till
=[{"process":"write_description","data":{"product":"Super Widget"}},{"process":"write_ad_copy","data":{"product":"Super Widget","tone":"Excited"}},{"process":"write_email","data":{"product":"Super Widget","audience":"Tech CEOs"}}].
Steg 2: Koppla task dispatch och vänteloopen
Den här delen förgrenar uppgifter till underarbetsflöden och pausar tills resultat returneras.
- Konfigurera Expand Task Items med Field to Split Out satt till
tasks. - Koppla Expand Task Items till Run Sub-Workflow (Configure) 1.
- I Run Sub-Workflow (Configure) 1, ställ in workflowInputs.value så att det inkluderar
data,status,process,resume_urlochmain_execution_idmed uttrycken{{ $json.data }},initialise,{{ $json.process }},{{ $execution.resumeUrl }}och{{ $execution.id }}. - Ställ in Pause for Team Results till Resume =
webhookoch HTTP Method =POST. - Koppla Run Sub-Workflow (Configure) 1 → Pause for Team Results → Aggregate Final Output.
Steg 3: Sätt upp AI-agentbearbetningen
Inkommande arbetsordrar dirigeras till specialiserade agenter som använder Gemini för generering.
- I Incoming Work Order Trigger, säkerställ att indata inkluderar main_execution_id, process, data, status och resume_url.
- I Evaluate Work Order Status, ställ in villkoret Status till
{{ $json.status }}är lika medpending. - Konfigurera regler i Process Routing Switch för att matcha
{{ $json.process }}medwrite_description,write_ad_copyochwrite_email. - Ställ in Description Draft Agent Text till
=Write a product description for: {{$json.data.product}}. - Ställ in Ad Copy Writer Agent Text till
=Write ad copy for: {{$json.data.product}}. The tone should be: {{$json.data.tone}}. - Ställ in Email Outreach Agent Text till
=Write a cold email about {{$json.data.product}} for the following audience: {{$json.data.audience}}. - Koppla Gemini Language Model som språkmodell för Description Draft Agent, Ad Copy Writer Agent och Email Outreach Agent.
Credential Required: Anslut era googlePalmApi-credentials i Gemini Language Model. För AI-agenterna ska credentials läggas till i Gemini Language Model, inte i agentnoderna.
Steg 4: Konfigurera returvägar för underarbetsflöden och statusspårning
Färdiga agentutdata skickas tillbaka till koordinatorn för aggregering och resume-kontroll.
- Koppla varje agent (Description Draft Agent, Ad Copy Writer Agent, Email Outreach Agent) till Run Sub-Workflow (Configure) 2.
- I Run Sub-Workflow (Configure) 2, ställ in mode till
eachoch mappa workflowInputs.value medstatus=completed,data={{ $json }},process={{ $('Incoming Work Order Trigger').last().json.process }}ochmain_execution_id={{ $('Incoming Work Order Trigger').last().json.main_execution_id }}. - I Project Status Console, behåll den medföljande JavaScript-koden för att spåra uppgiftsfärdigställande med Static Data.
- I Completion Gate Check, ställ in villkoret end_process till
{{ $json.end_process }}är lika medtrue. - Konfigurera Webhook Resume Call med URL =
{{ $json.resume_url }}och JSON Body ={{ $json.response }}, och säkerställ att Method ärPOST. - Routa false-utgången från Completion Gate Check till Run Sub-Workflow (Configure) 3 med status =
pendingoch skicka vidare{{ $json.data }},{{ $json.process }}och{{ $json.main_execution_id }}.
⚠️ Vanlig fallgrop: Om ID:n för underarbetsflöden i Run Sub-Workflow (Configure) 1, Run Sub-Workflow (Configure) 2 eller Run Sub-Workflow (Configure) 3 lämnas tomma kommer uppgifter aldrig att skickas ut eller returneras. Säkerställ att var och en pekar på rätt workflow-ID.
Steg 5: Konfigurera aggregering av slutligt resultat
Det här steget sammanställer all agentutdata och beräknar tidsmått.
- I Aggregate Final Output, ställ in email till
{{ $json.body.write_email.result.output }}. - Ställ in ad_copy till
{{ $json.body.write_ad_copy.result.output }}och description till{{ $json.body.write_description.result.output }}. - Ställ in seconds_saved till
{{ $json.body.values().map(item => item.duration_seconds).sum() - $json.body.values().map(item => item.duration_seconds).max() }}. - Ställ in task_duration_seconds till
{{ $json.body.values().map(item => item.duration_seconds).max() }}. - Ställ in task_duration_without_parallelisation till
{{ $json.body.values().map(item => item.duration_seconds).sum() }}.
Steg 6: Testa och aktivera ert arbetsflöde
Kör ett manuellt test för att verifiera routning, agentsvar och resume-loopen.
- Klicka på Execute Workflow på Manual Launch Trigger för att starta en testkörning.
- Bekräfta att Project Brief Builder skapar tre uppgiftsposter och att Expand Task Items delar upp dem.
- Verifiera att varje agent producerar utdata och skickar det via Run Sub-Workflow (Configure) 2.
- Kontrollera att Aggregate Final Output innehåller fälten email, ad_copy, description och tidsmåtten.
- Slå på arbetsflödet Active för produktionsanvändning när end-to-end-körningen har slutförts utan fel.
Vanliga fallgropar
- Google Sheets-autentisering kan löpa ut eller kräva specifika behörigheter. Om saker skapar fel, kontrollera Google-anslutningen i n8n:s Credentials och bekräfta att målarket är delat med rätt Google-konto.
- Om du använder Wait-noder eller extern bearbetning varierar sluttiderna. Öka väntetiden om nedströmsnoder fallerar på tomma svar medan vissa Gemini-uppgifter fortfarande kör.
- Standardprompts i AI-noder är generiska. Lägg in din varumärkesröst tidigt i Gemini-agenterna (ton, förbjudna fraser, formateringsregler) annars kommer du redigera utdata i all oändlighet.
Vanliga frågor
Vanligtvis under 30 minuter om dina Gemini- och Google-inloggningsuppgifter är klara.
Nej. Du kopplar främst ihop konton och redigerar prompts och fält. Det finns en Code-nod i det här arbetsflödet, men du kan använda den som den är om du inte vill ha egen statuslogik.
Ja. n8n har ett gratis self-hosted-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 Gemini API-användning från ditt Google-projekt.
Två alternativ: n8n Cloud (hanterat, enklast att sätta upp) eller self-hosting på en VPS. För self-hosting är Hostinger VPS prisvärt och hanterar n8n bra. Self-hosting ger dig obegränsat antal körningar men kräver grundläggande serveradministration.
Ja, och det är ett av de bästa skälen att använda det här mönstret. Du lägger till en ny uppgift i logiken “Expand Task Items” och routar den sedan via “Process Routing Switch” till en ny agent (eller återanvänder en befintlig med en annan prompt). De flesta team anpassar också “Project Brief Builder” för att inkludera varumärkesregler, produktdetaljer och listor över sådant man inte får säga. Om du vill att arket ska bli perfekt granskningsklart justerar du “Aggregate Final Output” så att det mappas till exakt de kolumner som ditt team redan använder.
Oftast beror det på att OAuth-behörigheter har löpt ut eller att kalkylarket inte är delat med samma Google-konto som används i n8n. Anslut Google Sheets-autentiseringen på nytt i n8n och verifiera sedan fil- och kalkylblads-ID:n som du skriver till. Om du skriver många rader på en gång kan du också slå i kvotgränser, så att batcha skrivningarna kan hjälpa.
I praktiken beror det på dina n8n-körningsgränser och Geminis rate limits, men de flesta små team kör dussintals arbetsordrar per dag utan problem i en grundsetup.
För fan-out/fan-in-arbetsflöden som detta är n8n helt enkelt bättre lämpat. Du behöver parallell körning, en riktig “vänta tills allt är klart”-spärr och flexibel routing, och det blir dyrt eller klumpigt i många no-code-verktyg. n8n ger dig också möjligheten att self-hosta, vilket spelar roll när du kör många utkast. Zapier eller Make kan fortfarande fungera bra för enkla automationer som “en prompt, en rad i ett ark”. Om du vill ha hjälp att välja rätt upplägg kan du prata med en automationsexpert.
När du slutar vänta på utkastuppgifter en i taget känns kampanjproduktionen betydligt lättare. Sätt upp det en gång och låt sedan arbetsflödet samla de stökiga delarna i ett enda felfritt ark som du kan granska och leverera.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.