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 + OpenAI: jämna efterlevnadspoäng

Rickard Andersson Partner, Nodenordic.se

Ditt compliance-kalkylark börjar som ”organiserat”. Sedan drar granskningarna igång. Olika granskare poängsätter kontroller på olika sätt, anteckningar hamnar i slumpmässiga kolumner och du tappar timmar på att göra röriga kommentarer till något som är redo för revision.

Complianceansvariga märker det under evidensperioden. Säkerhetsansvariga som gör interna revisioner märker det också. Det gör även konsulter som levererar rapporter för flera kunder. Den här automatiseringen av compliancepoäng tar samma kontroller i Google Sheets och producerar konsekventa poäng, tydliga motiveringar och strukturerade avvikelser som du faktiskt kan leverera.

Den här artikeln går igenom vad n8n-workflowen gör, vad du behöver för att köra den och hur mycket tid du realistiskt kan få tillbaka.

Så fungerar den här automatiseringen

Hela n8n-workflowen, från trigger till slutresultat:

n8n Workflow Template: Google Sheets + OpenAI: jämna efterlevnadspoäng

Problemet: inkonsekvent poängsättning av kontroller saktar ner allt

Att granska compliancekontroller låter enkelt tills du gör det i större skala. En person läser ”implementeringsanteckningar” och ger en försiktig poäng. En annan läser samma kontroll, ser evidenslänken och poängsätter högre. Sedan fastnar du i att stämma av skillnaden, skriva om motiveringar och strukturera upp anteckningar så att de inte låter som fem separata konversationer. Det värsta är kontextbytena: kopiera kontrolltext, klistra in i ett verktyg, vänta på svar, klistra tillbaka och upprepa för varje rad. När du är klar är kalkylarket ”färdigt”, men det är inte konsekvent.

Det summerar snabbt. Här brukar det oftast fallera.

  • Kontroller poängsätts med olika standarder, så trender och gap blir svåra att lita på.
  • Ramverksmappning tar evigheter när du manuellt korsmappas kontroller mellan PCI, ISO, SOC 2 och mer.
  • Avvikelser och rekommendationer skrivs om om och om igen eftersom första utkastet aldrig har samma format.
  • Batchgranskningar stannar upp när kalkylarket växer, vilket gör att din ”snabba granskning” blir en veckolång segdragen process.

Lösningen: batch-poängsätt, mappa och sammanfatta kontroller från Google Sheets

Den här n8n-workflowen gör ditt Google Sheet till en repeterbar pipeline för compliancepoängsättning. Du börjar med ett ark som innehåller varje kontrolls beskrivning samt din svarstext, implementeringsanteckningar och valfria evidens-URL:er. Workflowen hämtar raderna, bygger en samlad payload med ”kontrolltext” och skickar den till CyberPulse Compliance API för poängsättning och ramverksmappning. Parallellt använder den OpenAI för att generera en AI-skriven sammanfattning med avvikelser och rekommendationer som följer en konsekvent struktur. Till sist normaliserar den allt till korrekt formaterade resultatkolumner och lägger till resultaten i ett resultatark, rad för rad, så att din rapportdata redan är organiserad.

Workflowen startar när du kör den i n8n och den hämtar raderna från ditt ark. CyberPulse poängsätter varje kontroll och returnerar mappningar (inklusive crosswalk-berikning via din Crosswalk JSON-URL). OpenAI lägger till lättlästa sammanfattningar, sedan slås allt ihop och skrivs tillbaka till Google Sheets i ett rapportklart format.

Det du får: automatisering vs. resultat

Exempel: så här ser det ut i praktiken

Säg att du granskar 60 kontroller för en kvartalsvis avstämning. Manuellt, om du lägger cirka 10 minuter per kontroll på att tolka anteckningar, titta på evidenslänkar, sätta en poäng, mappa ramverk och skriva en kort avvikelse, är det ungefär 10 timmar fokuserat arbete (och ärligt talat blir det ofta mer). Med den här workflowen kan du först köra ett litet test och sedan batcha hela arket; din ”hands-on”-tid blir att välja ramverk, bekräfta Crosswalk-URL:en och granska utdata, vilket brukar landa närmare 1–2 timmar. Resten är processtid medan n8n kör batchen.

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 lagra indata (kontroller) och utdata (resultat).
  • CyberPulse Compliance API för poängsättning av kontroller och ramverksmappning.
  • OpenAI API-nyckel (hämta den från din sida för API-nycklar i OpenAI-plattformen).

Kunskapsnivå: Medel. Du kopplar upp autentiseringar, ändrar ett sheet-ID och validerar kolumnnamn, men du behöver inte bygga en app.

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

Så fungerar det

Rader hämtas från ditt indataark. När du kör workflowen läser n8n varje kontrollrad (control_id, control_description, response_text, implementation_notes samt upp till fyra evidens-URL:er).

Kontrolltext standardiseras före poängsättning. Workflowen kombinerar response_text och implementation_notes så att poängmotorn ser en sammanhängande, strukturerad berättelse per kontroll, inte utspridda fragment.

CyberPulse poängsätter och mappar kontroller medan OpenAI skriver narrativet. CyberPulse returnerar strukturerad utdata som score, confidence, rationale, categories, mapping_flat och mapped_count. OpenAI genererar det läsbara lagret: ai_summary plus tre avvikelser och tre rekommendationer som du kan lägga direkt i en rapport.

Allt normaliseras och läggs till i ett resultatark. Ett normaliseringssteg säkerställer att kolumnerna är konsekventa (status, evaluation, frameworks_selected, evidence_count, engine_version och AI-fälten), och sedan lägger n8n till varje färdig rad tillbaka i Google Sheets.

Du kan enkelt ändra vilka ramverk som utvärderas och var utdata hamnar utifrån dina behov. Se hela implementationsguiden nedan för anpassningsalternativ.

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

Steg 1: Konfigurera den manuella triggern

Det här arbetsflödet startar manuellt så att ni kan styra när efterlevnadsbatcher körs.

  1. Lägg till noden Manual Execution Start som din trigger.
  2. Lämna standardinställningarna som de är för Manual Execution Start.
  3. Valfritt: behåll Flowpast Branding som en fäst anteckning för dokumentation; den påverkar inte körningen.

Steg 2: Anslut Google Sheets

Hämta indatakontroller från ett Google Sheet och skriv normaliserade efterlevnadsresultat till ett resultatark.

  1. Öppna Retrieve Sheet Rows och välj indata-kalkylarket och arket.
  2. Ställ in Document till arket med ID [YOUR_ID] och Sheet Name till input_sheet.
  3. Autentiseringsuppgift krävs: anslut era googleSheetsOAuth2Api-uppgifter i Retrieve Sheet Rows.
  4. Öppna Append Results to Sheet och ställ in Operation till append.
  5. Ställ in Document till [YOUR_ID] och Sheet Name till results_sheet.
  6. Autentiseringsuppgift krävs: anslut era googleSheetsOAuth2Api-uppgifter i Append Results to Sheet.
Se till att resultatarket innehåller kolumner som matchar fältnamnen som används i Append Results to Sheet (t.ex. score, status, ai_summary).

Steg 3: Konfigurera fältmappning och efterlevnadspoängsättning

Mappa indatafält, anropa API:t för efterlevnadspoängsättning och loopa igenom varje post för bearbetning.

  1. I Map Input Fields ska ni ha Include Other Fields aktiverat och mappa fält med uttryck som {{ $json.control_description }} och {{ $json.response_text }}.
  2. I Compliance Scoring Engine ställer ni in Control Text till {{ $json.response_text + ($json.implementation_notes ? (' ' + $json.implementation_notes) : '') }}.
  3. Ställ in Crosswalk URL till https://gist.githubusercontent.com/[YOUR_ID]/raw/[YOUR_ID]/crosswalk.json.
  4. Ställ in Evidence URLs till uttrycken {{ $json.evidence_url_1 }}, {{ $json.evidence_url_2 }}, {{ $json.evidence_url_3 }} och {{ $json.evidence_url_4 }}.
  5. Autentiseringsuppgift krävs: anslut era cyberPulseHttpHeaderAuthApi-uppgifter i Compliance Scoring Engine.
  6. Behåll Iterate Through Records som batchkontroller; den tar emot items från Compliance Scoring Engine och loopar tillbaka efter att resultaten har lagts till.
⚠️ Vanlig fallgrop: Ersätt platshållarna [YOUR_ID] i Compliance Scoring Engine med er faktiska crosswalk JSON-URL, annars misslyckas poängsättnings-API:t.

Steg 4: Konfigurera AI-sammanfattningar och datanormalisering

Generera AI-sammanfattningar, slå ihop poängsättnings- och AI-strömmarna och normalisera sedan utdatafälten innan de skrivs till resultatarket.

  1. I Generate AI Summary ställer ni in Model till gpt-4o-mini och behåller JSON Output aktiverat.
  2. Använd de tillhandahållna system- och användarmeddelandena; de innehåller referenser som {{ $('Map Input Fields').item.json.control_description }} och {{ +$json.score }}.
  3. Autentiseringsuppgift krävs: anslut era openAiApi-uppgifter i Generate AI Summary.
  4. Behåll Combine Streams inställd på Mode combine och Combine By combineByPosition för att sammanfoga poängsättnings- och AI-data.
  5. I Normalize Output Row ska ni behålla Mode inställt på runOnceForEachItem och behålla den tillhandahållna JavaScript-koden för att sanera och standardisera utdatafält.

Körordningen här är linjär: Generate AI SummaryCombine StreamsNormalize Output RowAppend Results to Sheet.

Steg 5: Konfigurera utdatakolumner

Mappa normaliserade fält till ert resultatark för att säkerställa konsekventa poster.

  1. I Append Results to Sheet bekräftar ni att Operation är append.
  2. Mappa utdatafält som score till {{ $json.score }} och ai_summary till {{ $json.ai_summary }}.
  3. Inkludera mappningar för bevis och metadata, såsom evidence_count {{ $json.evidence_count }} och frameworks_selected {{ $json.frameworks_selected }}.
  4. Behåll loopen genom att säkerställa att Append Results to Sheet routar tillbaka till Iterate Through Records efter varje append.
Om schemat i resultatarket ändras, uppdatera fältmappningarna i Append Results to Sheet så att kolumn-ID:n matchar era rubriker i arket.

Steg 6: Testa och aktivera ert arbetsflöde

Kör ett manuellt test för att validera poängsättning, AI-utdata, normalisering och hur tillägg av rader fungerar.

  1. Klicka på Execute Workflow för att köra från Manual Execution Start.
  2. Verifiera att Retrieve Sheet Rows hämtar rader från input_sheet och att Append Results to Sheet skriver till results_sheet.
  3. Bekräfta att utdatafälten i resultatarket är korrekta, inklusive score, status, ai_summary och ai_findings.
  4. När allt är validerat, slå på arbetsflödet till Active för att använda det i produktion.
🔒

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

Få den kompletta implementeringsguiden + nedladdningsbar mall

Vanliga fallgropar

  • Behörigheter i Google Sheets är den tysta mördaren här. Om tillägg misslyckas, kontrollera det kopplade Google-kontot i n8n-autentiseringen och bekräfta att målarket för resultat finns och är redigerbart.
  • Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om nedströmsnoder fallerar på tomma svar.
  • CyberPulse-mappningar beror på att din Crosswalk JSON-URL är nåbar. Om mapped_count plötsligt faller till noll, öppna först URL:en i webbläsaren och bekräfta att den returnerar rå JSON (inte en HTML-sida).

Vanliga frågor

Hur lång tid tar det att sätta upp den här automatiseringen av compliancepoäng?

Cirka 10 minuter om ditt ark och dina API-nycklar är klara.

Behöver jag kodningskunskaper för att automatisera compliancepoängsättning?

Nej. Du kopplar främst konton och klistrar in ett sheet-ID och en Crosswalk-URL.

Är n8n gratis att använda för den här workflowen för automatisering av compliancepoäng?

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 OpenAI API-användning samt din CyberPulse Compliance API-plan för poängsättning/mappning i produktion.

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

Kan jag anpassa den här workflowen för automatisering av compliancepoäng för olika ramverk och poängregler?

Ja, och det bör du. I noden Compliance Scoring Engine kan du ändra vilka ramverk som väljs och byta Crosswalk JSON-URL (till exempel peka på din egen råa GitHub-JSON). Du kan också justera hur kontrolltext byggs i steget Map Input Fields om du vill inkludera control_description eller trimma bort brusiga anteckningar. Vanliga anpassningar är striktare formuleringar för ”Delvis implementerad”, andra utdata-kolumner för din rapportmall och att routa poäng med låg konfidens till en granskningskö (Gmail eller Telegram).

Varför misslyckas min Google Sheets-anslutning i den här workflowen?

Oftast är det fel Google-konto eller avsaknad av redigeringsbehörighet till resultatarket. Återanslut Google Sheets-autentiseringen i n8n och bekräfta sedan att fliknamnet i arket matchar vad noden förväntar sig. Kontrollera också att arket inte är skyddat, eftersom skyddade intervall ofta ser ut som ”slumpmässiga skrivfel” tills du ser behörighetsvarningen.

Hur många kontroller kan den här automatiseringen av compliancepoäng hantera?

Hundratals per körning är normalt, och du kan skala till tusentals genom att minska batchstorleken och lägga in en kort Wait om dina API:er har rate limits.

Är den här automatiseringen av compliancepoäng bättre än att använda Zapier eller Make?

Ofta ja, eftersom den här workflowen tjänar på batchning, att slå ihop flöden och normalisera utdata innan den skriver tillbaka till Sheets. n8n ger dig också ett self-hosting-alternativ för obegränsade körningar, vilket spelar roll när du poängsätter om stora ark under revisionsförberedelser. Zapier och Make kan fortfarande fungera om din process är liten, men flerstegs-poängsättning plus AI-utdata blir snabbt dyrt och klumpigt. Om du vill kan du prata med en automationsexpert så säger vi rakt ut vilket spår som är enklast för din volym.

När det här väl rullar slutar ditt kalkylark att vara en diskussion och blir ett system. Du får konsekventa poäng, renare mappningar och avvikelser du kan återanvända nästa cykel utan att börja om från noll.

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