CV-granskning fastnar alltid på samma ställe: i inkorgen. PDF:er staplas på hög, anteckningar hamnar på tre olika ställen och ”snabba genomgångar” blir långsamma, inkonsekventa beslut.
Rekryterare märker det först, men HR-chefer och stressade grundare som anställer sina första roller dras in i samma röra. Den här Gmail Sheets-automationen tar emot inkommande CV:n, poängsätter dem konsekvent och håller en strukturerad shortlist som du kan agera på.
Nedan ser du exakt hur flödet skickar CV:n till Google Sheets, hur AI-utvärderingen hålls strukturerad och hur beslutsmejl skickas utan att du jagar trådar.
Så fungerar den här automationslösningen
Hela n8n-flödet, från trigger till slutresultat:
n8n Workflow Template: Google Sheets + Gmail: snabbare cv-granskning
flowchart LR
subgraph sg0["On form submission Flow"]
direction LR
n0["<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/form.svg' width='40' height='40' /></div><br/>On form submission"]
n1@{ icon: "mdi:cog", form: "rounded", label: "Extract from File", pos: "b", h: 48 }
n2@{ icon: "mdi:robot", form: "rounded", label: "Structured Output Parser", pos: "b", h: 48 }
n3@{ icon: "mdi:cog", form: "rounded", label: "Upload CV", pos: "b", h: 48 }
n4@{ icon: "mdi:brain", form: "rounded", label: "OpenAI", pos: "b", h: 48 }
n5@{ icon: "mdi:robot", form: "rounded", label: "Applicant's Details", pos: "b", h: 48 }
n6@{ icon: "mdi:database", form: "rounded", label: "Add Applicant's Details in G..", pos: "b", h: 48 }
n7@{ icon: "mdi:robot", form: "rounded", label: "Summarize Applicant's Profile", pos: "b", h: 48 }
n8@{ icon: "mdi:database", form: "rounded", label: "Get Job Description from Goo..", pos: "b", h: 48 }
n9@{ icon: "mdi:robot", form: "rounded", label: "Summarize Job Role Description", pos: "b", h: 48 }
n10@{ icon: "mdi:robot", form: "rounded", label: "Semantic Fit & Evaluation by..", pos: "b", h: 48 }
n11@{ icon: "mdi:database", form: "rounded", label: "Update Evaluation Results in..", pos: "b", h: 48 }
n12@{ icon: "mdi:message-outline", form: "rounded", label: "Notify TA for Approval via E..", pos: "b", h: 48 }
n13@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Approval Check - IF Condition", pos: "b", h: 48 }
n14@{ icon: "mdi:message-outline", form: "rounded", label: "Send Shortlist Email to Cand..", pos: "b", h: 48 }
n15@{ icon: "mdi:message-outline", form: "rounded", label: "Send Rejection Email to Cand..", pos: "b", h: 48 }
n4 -.-> n5
n4 -.-> n7
n4 -.-> n10
n4 -.-> n9
n1 --> n6
n0 --> n3
n0 --> n1
n5 --> n7
n2 -.-> n10
n13 --> n14
n13 --> n15
n7 --> n8
n9 --> n10
n12 --> n13
n8 --> n9
n10 --> n11
n6 --> n5
n11 --> n12
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 n0 trigger
class n2,n5,n7,n9,n10 ai
class n4 aiModel
class n13 decision
class n6,n8,n11 database
classDef customIcon fill:none,stroke:none
class n0 customIcon
Problemet: CV-granskning blir bullrigt manuellt arbete
Det mesta i CV-granskning är inte ”svårt”. Det är bara repetitivt, fragmenterat och fullt av små bedömningar som varierar beroende på vem som läser just den dagen. En person skummar efter jobbtitlar, en annan bryr sig om verktyg och någon fastnar på formatering eller ett sabbatsår. Samtidigt växer administrationsbördan: ladda ner bilaga, döp om filen, lagra den någonstans, kopiera detaljer till ett kalkylark, skriva anteckningar och sedan uppdatera kandidaten igen senare. Multiplicera det med 30–100 sökande så försvinner en hel eftermiddag i rutinjobb. Än värre: du får en shortlist som är svår att motivera.
Det eskalerar snabbt. Här brukar processen gå sönder.
- CV:n kommer som bilagor i olika format, så att få ut konsekventa data blir manuell copy-paste.
- Anteckningar ligger i inkorgssvar, kalkylark och någons minne, vilket gör överlämningar smärtsamma.
- Bedömningen av matchning glider över tid eftersom kriterier inte tillämpas likadant för varje kandidat.
- Kandidater får vänta längre än nödvändigt, eftersom uppdateringar skickas ”efter granskningen”.
Lösningen: AI-stödd granskning in i Sheets med beslutsmejl
Det här flödet skapar en tydlig intake-kanal för sökande och gör varje CV till strukturerade, jämförbara rader i Google Sheets. Kandidaten skickar in sitt CV via ett enkelt inbäddat formulär (lätt att lägga på en karriärsida). n8n sparar filen i Google Drive, läser CV-innehållet och använder en OpenAI Chat Model för att extrahera kandidatens uppgifter i en förutsägbar struktur. Sedan hämtar flödet rätt kravprofil från Google Sheets, sammanfattar både rollen och kandidaten och kör en AI-baserad ”matchningsgranskning” som letar efter överensstämmelse, signaler om mjuka färdigheter och varningsflaggor. Till sist uppdaterar det din utvärderingssheet och mejlar din Talent Acquisition-kontakt för godkännande. När det är godkänt skickar flödet antingen ett shortlist-mejl eller ett avböjningsmejl automatiskt.
Flödet börjar vid inskick och slutar med ett loggat beslut. I mitten gör AI röriga dokument till strukturerade fält och jämför dem mot de jobbkriterier du redan har i Sheets. Teamet får en notis vid rätt tillfälle, inte en flod av ”FYI”-meddelanden.
Det här får du: automation vs. resultat
| Vad det här flödet automatiserar | Resultat du får |
|---|---|
|
|
Exempel: så här ser det ut
Säg att du får 40 CV:n för en roll under en vecka. Manuellt är det vanligt att lägga cirka 10 minuter per kandidat bara på att ladda ner filer, kopiera in grunderna i ett ark och skriva en snabb anteckning, vilket är ungefär 6 timmar innan du ens har jämfört någon ordentligt. Med det här flödet är ”mänsklig tid” mer att granska de poängsatta raderna och svara på godkännandemejlet, kanske 1–2 minuter per kandidat plus en kort godkännanderunda. AI-bearbetningen kör i bakgrunden och ditt Google Sheet hålls uppdaterat när kandidaterna kommer in.
Det du behöver
- n8n-instans (prova n8n Cloud gratis)
- Alternativ för egen hosting om du föredrar det (Hostinger fungerar bra)
- Gmail- eller e-postinkorgsåtkomst för kandidatkommunikation och notiser.
- Google Sheets för att lagra kandidater, kravprofiler och utvärderingar.
- Google Drive för att lagra CV-filer i en mapp.
- OpenAI API-nyckel (hämta den i din OpenAI-dashboard under API keys).
- SMTP-e-postuppgifter (hämta dem från din e-postleverantör eller SMTP-tjänst).
Kunskapsnivå: Mellan. Du kopplar konton, klistrar in några dokument-/mapp-ID:n och justerar prompts eller sheet-kolumner om er rekryteringsprocess är unik.
Vill du inte sätta upp det här själv? Prata med en automationsexpert (gratis 15-minuters konsultation).
Så fungerar det
Kandidatens inskick startar flödet. Ett formulärinskick triggar flödet och fångar kandidatens uppgifter samt CV-filen de laddade upp.
CV:t lagras och läses in. n8n laddar upp filen till Google Drive och extraherar sedan filinnehållet så att AI:n kan arbeta med text istället för att du ska behöva läsa en PDF manuellt.
AI gör dokument till strukturerade rekryteringsdata. OpenAI Chat Model och informationsutdragaren plockar ut förutsägbara fält (namn, erfarenhet, kompetenser, utbildning, länkar) och skapar en sammanfattad kandidatprofil. Därefter hämtar flödet relevant kravprofil från Google Sheets, sammanfattar rollen och kör en semantisk matchningsutvärdering för att producera konsekvent poängsättning och anteckningar.
Sheets blir system of record och e-post hanterar beslutet. Kandidatrader läggs till och uppdateras senare med utvärderingsresultaten. Ett mejl går till din ansvariga inom Talent Acquisition för godkännande och baserat på beslutet får kandidaten antingen ett shortlist-mejl eller ett avböjningsmejl.
Du kan enkelt ändra utvärderingskriterierna så att de matchar er bedömningsmall utifrån era behov. Se hela implementeringsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementering
Steg 1: Konfigurera triggern för formulärinsändning
Det här arbetsflödet startar när en kandidat skickar in ett formulär och kör sedan två grenar parallellt för att lagra CV:t och extrahera dess innehåll.
- Lägg till och öppna Form Submission Trigger.
- Publicera formuläret och säkerställ att de förväntade fälten inkluderar kandidatuppgifter och en filuppladdning för CV.
- Bekräfta körflödet: Form Submission Trigger skickar utdata parallellt till både Upload Resume File och Extract File Contents.
Steg 2: Anslut Google-tjänster
Arbetsflödet lagrar CV:n i Drive och använder Sheets för att registrera sökande, hämta jobbeskrivningar och skriva utvärderingar.
- Öppna Upload Resume File och anslut ert Drive-konto. Credential Required: Anslut era Google Drive-inloggningsuppgifter.
- Öppna Append Applicant to Sheet och ställ in målarket och arbetsbladet för sökanderegistret. Credential Required: Anslut era Google Sheets-inloggningsuppgifter.
- Öppna Retrieve Job Description Sheet och välj kalkylarket som innehåller rollbeskrivningar. Credential Required: Anslut era Google Sheets-inloggningsuppgifter.
- Öppna Update Evaluation Sheet och konfigurera utvärderingsarket och målbladet. Credential Required: Anslut era Google Sheets-inloggningsuppgifter.
Steg 3: Sätt upp AI-bearbetning och strukturerad output
AI-stegen extraherar sökandedata, sammanfattar kandidat- och rollinformation och tar fram en strukturerad utvärdering.
- Öppna AI Chat Engine och välj er modellkonfiguration. Credential Required: Anslut era OpenAI-inloggningsuppgifter.
- Öppna Applicant Info Extractor och bekräfta att den tar emot det tolkade CV-innehållet från Append Applicant to Sheet.
- Öppna Summarize Candidate Profile och säkerställ att den använder AI Chat Engine som språkmodell.
- Öppna Summarize Role Description och säkerställ att den använder AI Chat Engine som språkmodell.
- Öppna HR Semantic Fit Review och verifiera att den använder AI Chat Engine plus Structured Output Reader för strukturerad utvärderingsoutput.
Steg 4: Konfigurera output- och kommunikationsnoder
Utvärderingen skrivs till ett kalkylark och routas till e-postnotiser för rekryterarens godkännande och kandidatutfall.
- Öppna Email TA for Approval och konfigurera mottagare, ämne och meddelandemall. Credential Required: Anslut era e-postinloggningsuppgifter.
- Öppna Email Shortlist Notice och konfigurera godkännandemejlet till kandidaten. Credential Required: Anslut era e-postinloggningsuppgifter.
- Öppna Email Rejection Notice och konfigurera avslagsmejlet till kandidaten. Credential Required: Anslut era e-postinloggningsuppgifter.
- Bekräfta att Update Evaluation Sheet skriver AI-granskningens output till ert utvärderingskalkylark.
Steg 5: Konfigurera routningslogik för godkännandebeslut
Godkännanderoutningen delar upp arbetsflödet baserat på beslutets utfall.
- Öppna Approval Decision Check och definiera villkoret som avgör om sökanden godkänns eller avslås.
- Säkerställ att den sanna grenen kopplas till Email Shortlist Notice och den falska grenen kopplas till Email Rejection Notice.
- Verifiera den uppströms vägen: Update Evaluation Sheet → Email TA for Approval → Approval Decision Check.
Steg 6: Testa och aktivera ert arbetsflöde
Testa med en riktig formulärinsändning för att bekräfta att filer laddas upp, att AI-output fyller i kalkylark och att e-post routas korrekt.
- Klicka på Execute Workflow och skicka in en testansökan via Form Submission Trigger.
- Verifiera att Upload Resume File lagrar filen och att Extract File Contents skickar text till Append Applicant to Sheet.
- Bekräfta att sammanfattningar och utvärderingsdata visas i Update Evaluation Sheet, och kontrollera sedan att godkännandemejl skickas från Email TA for Approval.
- Testa båda grenarna i Approval Decision Check för att bekräfta att Email Shortlist Notice och Email Rejection Notice fungerar som förväntat.
- När allt fungerar, växla arbetsflödet till Active för användning i produktion.
Vanliga fallgropar
- Google Sheets-autentisering kan löpa ut eller kräva specifika behörigheter. Om det skapar fel, kontrollera Google-anslutningen i n8n:s sida för Credentials och bekräfta att sheetet är delat med rätt Google-konto.
- Om du använder Wait-noder eller extern bearbetning (som filutdrag), varierar processtiderna. Öka väntetiden om efterföljande noder fallerar på tomma svar.
- Standardprompterna i AI-noder är generiska. Lägg in er tonalitet och er rekryteringsrubrik tidigt, annars kommer du redigera utdata i all evighet.
Vanliga frågor
Cirka 30–60 minuter om dina Sheets och Drive är förberedda.
Nej. Du kommer mest koppla konton och klistra in några ID:n i rätt noder.
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 OpenAI API-användning, vilket oftast är några cent per CV beroende på promptlängd.
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 dig obegränsade körningar men kräver grundläggande serverhantering.
Ja, och det bör du. Du kan ändra rollalternativ i formulärtriggern, uppdatera källarket för kravprofiler och sedan justera prompten för ”HR Semantic Fit Review” så att poängsättningen speglar det som är viktigt för rollen. Vanliga justeringar är att vikta specifika kompetenser, lägga till ”måste-krav” som är dealbreakers och att skapa separata anteckningar för rekryterande chefer kontra HR.
Oftast beror det på att Google-auktoriseringen har löpt ut eller att sheetet inte är delat med det anslutna kontot. Återanslut Google Sheets-credential i n8n och öppna sedan sheetet och bekräfta att åtkomsten är korrekt. Om det fortfarande misslyckas, kontrollera att spreadsheet-ID:t i noden matchar det faktiska dokumentet, särskilt om du duplicerade mallen.
Med n8n Cloud Starter kan du köra en bra volym för små team, och högre nivåer hanterar mer. Om du hostar själv finns ingen plattformsgräns för antal körningar (det beror mest på din server) och den praktiska begränsningen är oftast e-post/API-genomströmning. I praktiken bearbetar team ofta dussintals CV:n per dag utan att röra flödet, så länge du håller prompterna rimliga och undviker jättestora filer.
Det beror på hur hårda era krav på urvalet är. Om du bara vill ha ”mejl kommer in, lägg till en rad” kan Zapier eller Make vara enklare. Men det här flödet använder AI-bearbetning i flera steg, villkorade godkännanden och mer avancerad förgrening utan att tvinga dig in i premiumprissättning per ”tasks” varje gång logiken växer. n8n ger dig också möjligheten att hosta själv, vilket blir viktigt när rekryteringsvolymen ökar. Är du osäker, prata med en automationsexpert så får du en rak rekommendation.
När detta väl är igång slutar CV-inflödet vara ett dagligt avbrott. Du får felfria data, konsekvent granskning och snabbare beslut, utan att göra rekrytering till ännu mer administrativt arbete.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.