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 Google Drive, annonsbilder snabbt

Rickard Andersson Partner, Nodenordic.se

Din process för annonsmaterial kraschar förmodligen på det mest irriterande stället. Inte i delen med den “stora idén”, utan i den oändliga mitten: ladda ner bilder, döpa om filer, klistra in länkar i ett kalkylark och försöka hålla varje produktbild konsekvent.

Den här Sheets Drive-automationen träffar performance marketers först, helt ärligt. Men e-handlare och byråteam känner också av det när “vi behöver 10 nya creatives till imorgon” blir en rörig skattjakt bland Google Drive-mappar.

Det här flödet gör om en enkel rad i Google Sheets till en annonsklar produktbild i Google Drive och uppdaterar sedan ditt spårningsark så att du alltid vet vad som är redo att publiceras (och vad som inte är det).

Så fungerar den här automatiseringen

Hela n8n-flödet, från trigger till slutligt resultat:

n8n Workflow Template: Google Sheets till Google Drive, annonsbilder snabbt

Problemet: annonsmaterial fastnar i produktionen

Att ta fram “en bra annonsbild” är görbart. Att göra 10 om dagen, över olika produkter, modeller och kampanjvinklar, är där det faller isär. Du slutar med att kopiera länkar från Google Drive till ett kalkylark, ladda ner bilder bara för att ladda upp dem igen och försöka hålla ljus och styling i linje med vad din senaste vinnande creative såg ut som. Sedan frågar någon “är den här klar?” och du är inte ens säker på vilken version som är den senaste eftersom mappen har tre filer som heter final_final_2.png. Det är utmattande och det saktar ner testningen i det tysta.

Friktionen bygger på. Här brukar det oftast falla.

  • Du lägger cirka 10 minuter per produkt på att bara samla rätt produkt- och influencerbilder från Drive.
  • Kreativ konsekvens blir en gissningslek, så du tappar tid på revideringar och “gör så att den matchar den förra”-vändor.
  • Statusuppföljningen sitter i folks huvuden, vilket gör att lanseringar halkar efter eftersom ingen vet vad som faktiskt går att publicera.
  • Manuell filhantering leder till fel uppladdningar, trasiga länkar eller saknade tillgångar precis när en kampanj behöver tempo.

Lösningen: gör om rader i Sheets till annonsklara bilder

Det här flödet gör ditt Google Sheet till en produktionskö för annonsmaterial. Enligt schema hämtar det nästa rad med produkt- och modell/influencer-URL:er, laddar ner båda bilderna från Google Drive och förbereder dem för AI-bearbetning. Sedan använder det OpenAI för att analysera produktbilden och generera en praktisk, annonsfokuserad beskrivning (tänk ljus, känsla, styling-signaler). Med den vägledningen anropar det en bildmodell via OpenRouter för att skapa en polerad komposit som ser ut som en riktig kampanjasset, inte en grov mockup. Till sist sparar flödet den färdiga bilden i en angiven Google Drive-mapp och uppdaterar den ursprungliga raden i Google Sheets med Drive-länken och en status som är redo att publicera.

Det börjar med en schemalagd trigger och en enda sanningskälla (ditt ark). AI sköter den kreativa omvandlingen i mitten. Google Drive och Google Sheets uppdateras sedan automatiskt, så ditt “produktionssystem” hålls strukturerat utan extra adminarbete.

Vad du får: automatisering vs. resultat

Exempel: så här ser det ut

Säg att du skapar 8 annonsbilder varje morgon för nya produktvinklar. Manuellt kanske du lägger cirka 10 minuter på att hitta och ladda ner rätt produktbild, ytterligare 10 minuter på att hitta en matchande influencerbild och sedan 5 minuter på att ladda upp och klistra in länkar tillbaka i ditt ark. Det är ungefär 3 timmar av filhantering och uppföljning. Med det här flödet uppdaterar (eller lägger till) du 8 rader i Google Sheets, låter den schemalagda körningen generera bilderna och kommer tillbaka till ett ark fullt av Drive-länkar markerade som redo att publicera. De flesta dagar sjunker din “tidsåtgång” till cirka 15 minuter för granskning.

Det här behöver du

  • n8n-instans (testa n8n Cloud gratis)
  • Alternativ för self-hosting om du föredrar det (Hostinger fungerar bra)
  • Google Sheets för att hålla din produktionskö för creatives.
  • Google Drive för att lagra underlag och färdiga creatives.
  • OpenAI API-nyckel (hämta den i din OpenAI-kontos instrumentpanel).

Kunskapsnivå: Medel. Du kopplar Google-inloggningar, klistrar in API-nycklar och mappar några fält i arket.

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

Så fungerar det

En schemalagd körning drar igång. Flödet startar på timer så att dina creatives kan genereras dagligen (eller några gånger per dag) utan att någon behöver komma ihåg att trycka på en knapp.

Google Sheets blir sanningskällan. n8n hämtar relevanta rad(er) för “dagens” objekt, inklusive Google Drive-URL:erna för produktbilden och influencer-/modellbilden du vill kombinera.

Bilder hämtas från Google Drive och förbereds för AI. Flödet laddar ner varje bild, konverterar filerna till base64-format (i praktiken ett sätt att skicka bilder via ett API) och använder sedan OpenAI för att analysera produktbilden så att slutresultatet följer en konsekvent annonsstil.

En OpenRouter-förfrågan skapar den nya annonsbilden. Flödet skickar in underlag och stylingriktlinjer till en bildmodell, städar upp svaret, konverterar tillbaka till en korrekt bildfil och laddar upp den precis där teamet förväntar sig den i Google Drive.

Du kan enkelt ändra statusen “redo att publicera” så att den matchar er benämning (eller lägga till ett granskningssteg) utifrån era behov. Se hela implementationsguiden nedan för anpassningsalternativ.

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

Steg 1: Konfigurera den schemalagda workflow-triggern

Ställ in schemat som startar bildskapandeprocessen.

  1. Lägg till och öppna Scheduled Workflow Trigger.
  2. Definiera ert schema under Rule så att workflowet körs när nya rader ska behandlas.
  3. Koppla Scheduled Workflow Trigger till Fetch Sheet Row.
Om ni testar, ställ in ett kort intervall så att ni kan verifiera datahämtningen utan att behöva vänta en hel dag.

Steg 2: Anslut Google Sheets

Hämta den schemalagda raden som innehåller produkt- och modellbildens URL:er.

  1. Öppna Fetch Sheet Row och välj ert kalkylark i Document, t.ex. [YOUR_ID].
  2. Ställ in Sheet Name till Sheet1 (gid=0).
  3. I Filters, ställ in Lookup Column till Date och Lookup Value till ={{ $json.Month }} {{ $json['Day of month'] }}, {{ $json.Year }}.
  4. Credential Required: Anslut era googleSheetsOAuth2Api-credentials för Fetch Sheet Row.
⚠️ Vanlig fallgrop: Uppslagsdatumet måste matcha exakt format i ert ark, annars returneras inga rader.

Steg 3: Anslut Google Drive och förbered bilder

Ladda ned produkt- och modellbilderna och konvertera dem till base64 för AI-bearbetning.

  1. I Retrieve Product Photo, ställ in File ID till ={{ $json['Product url'] }} och behåll Operation som download.
  2. Credential Required: Anslut era googleDriveOAuth2Api-credentials för Retrieve Product Photo.
  3. I Convert Product Binary, ställ in Operation till binaryToPropery.
  4. I Fetch Model Image, ställ in File ID till ={{ $('Fetch Sheet Row').item.json['Model url'] }} och behåll Operation som download.
  5. Credential Required: Anslut era googleDriveOAuth2Api-credentials för Fetch Model Image.
  6. I Convert Model Binary, ställ in Operation till binaryToPropery.

Retrieve Product Photo skickar output både till Convert Product Binary och Evaluate Product Photo parallellt.

Steg 4: Sätt upp AI-bearbetning och bildgenerering

Analysera produkten och generera en kompositbild som är redo för annonsering.

  1. Öppna Evaluate Product Photo och behåll Resource som image, Input Type som base64 och Operation som analyze.
  2. Credential Required: Anslut era openAiApi-credentials för Evaluate Product Photo.
  3. I Generate Ad Visual, ställ in URL till https://openrouter.ai/api/v1/chat/completions och Method till POST.
  4. Ställ in JSON Body till:
    ={ "model": "google/gemini-2.5-flash-image-preview", "prompt": "{{ $json.content }}", "image_inputs": [ { "image": "{{ $json.data }}", "mime_type": "image/png" }, { "image": "{{ $('Convert Product Binary').item.json.data }}", "mime_type": "image/jpeg" } ] }
  5. I headers för Generate Ad Visual, ställ in Authorization till Bearer [CONFIGURE_YOUR_TOKEN] och Content-Type till application/json.
  6. I Clean Base64 Output, behåll den angivna JS Code för att ta bort prefixet data:image/png;base64,.
  7. I Build Image File, ställ in Operation till toBinary och Source Property till choices[0].images[0].image_url.url.
⚠️ Vanlig fallgrop: Om OpenRouter-token i Generate Ad Visual saknas eller är ogiltig kommer workflowet att fallera innan någon fil skapas.

Steg 5: Konfigurera output och uppdateringar i arket

Lagra den genererade bilden i Drive och logga resultatet tillbaka till kalkylarket.

  1. I Store Ad Visual, ställ in Name till =Ad Image {{ $runIndex + 1 }}.
  2. Välj målmappen i Store Ad Visual med Folder ID (t.ex. [YOUR_ID]).
  3. Credential Required: Anslut era googleDriveOAuth2Api-credentials för Store Ad Visual.
  4. Öppna Update Results Sheet och behåll Operation som appendOrUpdate.
  5. Mappa Date till ={{ $('Fetch Sheet Row').item.json.Date }}, Publish till Publish och Ad Image Ready To Post till ={{ $json.webContentLink }}.
  6. Credential Required: Anslut era googleSheetsOAuth2Api-credentials för Update Results Sheet.
Sticky note Flowpast Branding är valfri och påverkar inte körningen.

Steg 6: Testa och aktivera ert workflow

Kör ett kontrollerat test för att bekräfta att bilder genereras och loggas korrekt.

  1. Klicka på Execute Workflow för att köra ett manuellt test med er aktuella arkrad.
  2. Bekräfta att Store Ad Visual skapar en fil i er Drive-mapp och returnerar en webContentLink.
  3. Verifiera att Update Results Sheet skriver bildens URL och status till rätt rad.
  4. Slå på workflowet med reglaget Active för att aktivera schemalagda körningar.
🔒

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

Få den kompletta implementeringsguiden + nedladdningsbar mall

Vanliga fallgropar

  • Google Drive-uppgifter kan löpa ut eller kräva specifika behörigheter. Om det slutar fungera, kontrollera det anslutna Google-kontot i n8n:s Credentials och bekräfta först att det har åtkomst till exakt rätt mapp.
  • Om du använder Wait-noder eller extern rendering varierar process-tiderna. Öka väntetiden om nedströmsnoder fallerar på tomma svar.
  • Standardprompter i AI-noder är generiska. Lägg in er varumärkeston tidigt, annars kommer du att redigera utdata för alltid.

Vanliga frågor

Hur lång tid tar det att sätta upp den här Sheets Drive-automationen?

Cirka 30 minuter om dina Google-konton och API-nycklar är klara.

Behöver jag kunna koda för att automatisera rader i Google Sheets till annonsbilder?

Nej. Du kopplar främst konton och mappar dina kolumner i arket till rätt fält i n8n.

Är n8n gratis att använda för det här flödet för Sheets Drive-automation?

Ja. n8n har ett gratis self-hosted-alternativ och en gratis provperiod på n8n Cloud. Cloud-planer startar på 20 USD/månad för högre volym. Du behöver också räkna in användning av OpenAI och OpenRouter, vilket oftast är några cent per bild beroende på inställningar.

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

Två alternativ: n8n Cloud (hanterat, enklast att sätta upp) eller self-hosting på en VPS. För self-hosting är Hostinger VPS prisvärd och hanterar n8n bra. Self-hosting ger obegränsat antal körningar men kräver grundläggande serverhantering.

Kan jag anpassa det här flödet för Sheets Drive-automation med ett manuellt granskningssteg innan publicering?

Ja, och det är en smart justering. De flesta team lägger till en status “Behöver granskas” i noden Update Results Sheet och markerar sedan “Redo” först efter att någon kontrollerat resultatet i Drive. Du kan också dela upp utdata i två mappar genom att ändra uppladdningsdestinationen i Store Ad Visual, till exempel /Review och /Approved. Om du senare använder HubSpot för kampanjloggning kan du även förgrena efter uppladdning och skapa en post först när status är Approved.

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

Oftast handlar det om behörigheter. Säkerställ att det anslutna Google-kontot har åtkomst till den specifika Drive-mappen och att fil-URL:erna i ditt ark pekar på filer som inte är begränsade. Om du nyligen ändrat lösenord eller säkerhetsinställningar, autentisera om Google Drive-uppgiften i n8n. Kontrollera också att filer i delade enheter stöds av inställningarna i den Drive-nod du använder.

Hur många annonsbilder kan den här Sheets Drive-automationen hantera?

På en typisk n8n Cloud-plan kör team några hundra till några tusen körningar per månad, och self-hosting tar bort körningsbegränsningar (det är din server som sätter gränsen). I praktiken är det oftast AI-genereringssteget som tar tid, så genomströmningen blir vanligtvis “några bilder åt gången” om du inte lägger till batchning och styrning av parallellitet.

Är den här Sheets Drive-automationen bättre än att använda Zapier eller Make?

Ofta, ja. Det här flödet kräver filhantering i flera steg (ladda ner, konvertera, skicka till AI, städa base64, bygga upp en fil igen, ladda upp) och villkorslogik, vilket n8n hanterar utan att det känns som att du slåss mot plattformen. Zapier eller Make kan fungera, men kostnaderna kan dra iväg när du gör många AI-anrop och filsteg, och vissa “avancerade” förgreningsmönster är helt enkelt mer omständliga där. Om du bara genererar ett par creatives i veckan kanske du inte bryr dig. Om du försöker skala daglig produktion är n8n oftast det lugnare valet. Prata med en automationsexpert om du vill ha hjälp att välja.

När detta väl rullar slutar ditt kalkylark att vara “admin” och blir din kreativa motor. Flödet tar hand om de repetitiva delarna så att du kan fokusera på det som faktiskt driver performance.

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