Templates / Rank resumes by job description similarity using Gemini embeddings

Rank resumes by job description similarity using Gemini embeddings

Ready for 3.0

by Atha Ahsan Xavier Haris ✓ · 28 views · created 2026-06-30 · HR, AI Summarization

Ready for 3.0. This template uses no nodes that n8n 3.0 removes. No removed nodes, versions or helpers found. Static check, last run 2026-10-19.

What this workflow does

This workflow has 7 nodes and runs when someone submits an n8n form (“Sort Resumes by Job Description Similarity”). It uses only n8n's built-in nodes. It also calls generativelanguage.googleapis.com over HTTP.

How it runs

Trigger: When someone submits an n8n form (“Sort Resumes by Job Description Similarity”).

  1. Split Resume PDFs (Code): runs custom JavaScript code
  2. Create Job Description Embedding (HTTP Request): calls generativelanguage.googleapis.com (POST)
  3. Convert PDF to Base (Extract from File): extracts data from a file (binary to propery)
  4. Create Resume Embedding (HTTP Request): calls generativelanguage.googleapis.com (POST)
  5. Rank Resumes by Similarity (Code): runs custom JavaScript code
  6. Show Results (n8n Form): shows the next form page

HTTP calls to: generativelanguage.googleapis.com

Before you upgrade to n8n 3.0

Nothing in this workflow is removed in n8n 3.0, so it should import and run after the upgrade.

Nodes used (5)

From the author

Quick overview This workflow collects resume PDFs and a job description via an n8n form, generates embeddings with Google Gemini, calculates cosine similarity between each resume and the job description, and returns a CSV-style ranked list of filenames. How…

Excerpt from Atha Ahsan Xavier Haris's description on n8n.io.

View the original on n8n.io → Check your own copy

Get the weekly “what broke” email

New templates, newly broken ones, and n8n release changes. One short email a week.

Form not loading? Subscribe here.