Adzuna to Google Sheets, ranked jobs in one place
You find a “great” role, open it, and it’s a mismatch. Wrong seniority, wrong stack, wrong location, or the same repost you saw last week. After a few rounds of that, job hunting starts feeling like a second job.
Job seekers get burned out first. Recruiters trying to support candidates feel it too. Career coaches see it in every session. This Adzuna job automation pulls real listings, summarizes them, scores fit, and puts your best options in one sheet so you can act fast.
You’ll see what the workflow does end-to-end, what you need to run it, and how to customize it without turning this into a technical project.
How This Automation Works
See how this solves the problem:
n8n Workflow Template: Adzuna to Google Sheets, ranked jobs in one place
flowchart LR
subgraph sg0["Schedule Flow"]
direction LR
n0@{ icon: "mdi:play-circle", form: "rounded", label: "Schedule Trigger", pos: "b", h: 48 }
n1@{ icon: "mdi:robot", form: "rounded", label: "Score Job", pos: "b", h: 48 }
n2@{ icon: "mdi:swap-vertical", form: "rounded", label: "Set Job Title1", pos: "b", h: 48 }
n3["<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/>Get Jobs from Adzuna1"]
n4@{ icon: "mdi:swap-vertical", form: "rounded", label: "Split Jobs1", pos: "b", h: 48 }
n5@{ icon: "mdi:robot", form: "rounded", label: "Summarize Job1", pos: "b", h: 48 }
n6@{ icon: "mdi:database", form: "rounded", label: "Google Sheets", pos: "b", h: 48 }
n7@{ icon: "mdi:message-outline", form: "rounded", label: "Gmail1", pos: "b", h: 48 }
n8@{ icon: "mdi:robot", form: "rounded", label: "Write Cover Letter1", pos: "b", h: 48 }
n1 --> n8
n4 --> n5
n6 --> n7
n2 --> n3
n5 --> n1
n0 --> n2
n8 --> n6
n3 --> n4
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 n1,n5,n8 ai
class n6 database
class n3 api
classDef customIcon fill:none,stroke:none
class n3 customIcon
The Challenge: Job hunting becomes endless triage
Most people don’t struggle to find jobs. They struggle to filter them. You jump between tabs, scan long descriptions, try to compare “nice-to-haves” across listings, then forget which one looked best. And if you’re supporting other people (clients, candidates, your team), you end up re-reading the same wall of text just to answer one question: “Is this worth applying to?” The mental load is the killer. You spend an hour searching and still feel unsure, because nothing is standardized and everything is scattered.
It adds up fast. Here’s where it usually breaks down.
- Good roles get buried because you can’t compare listings in a consistent format.
- Manual note-taking creates gaps, so you revisit the same listings and waste more time.
- “Quick scans” miss key details like seniority signals, required tools, or dealbreakers tucked mid-post.
- Even when you find a fit, writing a tailored first-pass cover note slows you down right when speed matters.
The Fix: Adzuna → AI scoring → Google Sheets + Gmail highlights
This workflow turns job discovery into a repeatable pipeline. It starts on a schedule, searches Adzuna’s API for the titles you define, then processes each listing one-by-one. AI summarizes the messy parts into a clean snapshot (responsibilities, requirements, location, compensation cues when available), then scores the role against a candidate profile you control. For the roles that look promising, it also drafts a cover letter first pass so you’re not starting from a blank page. Finally, everything gets logged to Google Sheets for easy sorting and comparison, and a Gmail message sends you the highlights so you don’t have to keep “checking later.”
The workflow begins when the scheduled trigger runs. Adzuna returns fresh listings, then AI summarizes and ranks each one before saving the results to a spreadsheet. Gmail delivers a digest so you can review quickly and apply with confidence.
What Changes: Before vs. After
| What This Eliminates | Impact You’ll See |
|---|---|
|
|
Real-World Impact
Say you review 20 listings a day. Manually, it’s easy to spend about 5 minutes opening, scanning, and taking notes per job, which is roughly 100 minutes. With this workflow, you spend maybe 10 minutes updating your target titles/profile once, then you review a ranked Google Sheet and a Gmail digest in about 15 minutes. That’s over an hour back on a normal day, and you’re making cleaner decisions.
Requirements
- n8n instance (try n8n Cloud free)
- Self-hosting option if you prefer (Hostinger works well)
- Adzuna API to fetch real-time job listings
- Google Sheets for a sortable, searchable review log
- OpenAI API key (get it from the OpenAI dashboard)
Skill level: Intermediate. You’ll connect accounts, add API keys, and edit a couple of text prompts.
Need help implementing this? Talk to an automation expert (free 15-minute consultation).
The Workflow Flow
A scheduled run kicks things off. The workflow starts with a planned trigger (daily, weekdays only, whatever you prefer). You don’t need to remember to “go search” because the search comes to you.
Your target role title is set. A simple field sets the job title (or titles) you want to search for, which keeps the rest of the workflow consistent and easy to reuse.
Adzuna is queried directly via API. An HTTP Request pulls current listings from Adzuna, then the results are split so each job can be evaluated individually instead of as one big blob.
AI summarizes, scores, and drafts your first-pass cover letter. OpenAI processes each listing to extract the important parts, ranks it against your candidate profile, and generates a cover letter draft you can edit instead of writing from scratch.
Sheets becomes the source of truth, and Gmail sends the shortlist. The workflow writes each job’s summary, score, and draft into Google Sheets, then emails you the highlights so you can review and apply without digging.
You can easily modify the job title search to include location filters, salary cues, or an “ignore list” of companies based on your needs. See the full implementation guide below for customization options.
Step-by-Step Implementation Guide
Step 1: Configure the Schedule Trigger
Set when the workflow should run automatically and start the job search pipeline.
- Add and open Planned Run Trigger.
- Configure the schedule settings based on how often you want to fetch job listings.
- Ensure Planned Run Trigger is connected to Assign Role Title.
Step 2: Connect the Adzuna Data Source
Define the role keyword(s) and use them to request job listings.
- Open Assign Role Title and set the role title fields you want to search for.
- Open Fetch Adzuna Listings and set the HTTP request details for the Adzuna API endpoint and query parameters.
- Confirm the connection flow: Assign Role Title → Fetch Adzuna Listings → Distribute Job Records.
⚠️ Common Pitfall: If the Adzuna API requires authentication, be sure to add the appropriate header or query key in Fetch Adzuna Listings before testing.
Step 3: Set Up AI Processing for Summaries, Ranking, and Cover Letters
Use AI to summarize job postings, rank fit, and draft cover letters.
- Open Summarize Position Details and configure the prompt and input mapping for job descriptions.
- Open Rank Role Match and configure the scoring/ranking logic based on the summary output.
- Open Draft Cover Letter and configure the prompt using the role details and ranking output.
- Credential Required: Connect your OpenAI credentials in Summarize Position Details, Rank Role Match, and Draft Cover Letter.
Step 4: Configure Spreadsheet Logging and Email Dispatch
Store results and send the generated cover letter via email.
- Open Modify Spreadsheet and set the Google Sheets document, sheet tab, and columns where you want to log job data.
- Credential Required: Connect your Google Sheets credentials in Modify Spreadsheet.
- Open Dispatch Gmail Message and set the recipient, subject, and email body using the cover letter output.
- Credential Required: Connect your Gmail credentials in Dispatch Gmail Message.
- Confirm the flow: Draft Cover Letter → Modify Spreadsheet → Dispatch Gmail Message.
Step 5: Test and Activate Your Workflow
Run a manual test to validate all connections and outputs before enabling automation.
- Click Execute Workflow to run a manual test from Planned Run Trigger.
- Verify that Fetch Adzuna Listings returns job data and Distribute Job Records splits items correctly.
- Check that Summarize Position Details, Rank Role Match, and Draft Cover Letter produce outputs.
- Confirm that Modify Spreadsheet adds a new row and Dispatch Gmail Message sends the email.
- When satisfied, toggle the workflow to Active for scheduled execution.
Watch Out For
- Adzuna credentials can expire or be tied to an app setting. If your HTTP Request starts failing, check your Adzuna API key status in your Adzuna developer account first.
- If you’re using Wait nodes or external rendering, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses.
- Default prompts in AI nodes are generic. Add your brand voice and your real candidate profile early or you’ll be rewriting summaries and cover drafts forever.
Common Questions
About 30 minutes once your API keys are ready.
Yes. No coding is required, but someone needs to be comfortable pasting API keys and editing a couple of prompts.
Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in OpenAI API costs (often a few cents per batch of listings, depending on how long the job descriptions are).
Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.
You can tweak the role targeting in “Assign Role Title,” then adjust the AI prompts inside “Summarize Position Details” and “Rank Role Match” to reflect your real dealbreakers (remote only, specific tools, minimum salary, visa rules, and so on). If you want more tailored outreach, update “Draft Cover Letter” to include your preferred structure and a few reusable proof points. Many teams also add a simple filter so only jobs above a chosen score get emailed.
Usually it’s an invalid or expired Adzuna API key, or the request parameters don’t match what your Adzuna plan allows. Check the credentials used in the “Fetch Adzuna Listings” HTTP Request node, then confirm your query fields (country, location, results per page) are valid. If it fails only when you pull a lot of jobs, you may be hitting rate limits, so lower the batch size or run it less often.
On n8n Cloud, capacity depends on your plan’s monthly executions, and each job processed counts toward that total. If you self-host, there’s no execution cap, but your server and API limits become the bottleneck. In practice, most people comfortably process a few dozen to a couple hundred listings per run, then tighten the search so the AI spends time only on relevant results.
Often, yes, because this kind of job scoring needs branching logic, per-item processing, and AI prompts that are easier to manage in n8n. Zapier and Make can still do it, but costs can climb when every job listing becomes multiple paid tasks and you start adding filters, retries, and formatting. n8n also gives you the self-host option, which is handy if you want to run frequent searches without watching usage counters. If your workflow is just “send me new jobs,” simpler tools can be fine. Talk to an automation expert if you want a quick recommendation for your volume and budget.
Once this is running, your job search stops being a daily scavenger hunt. The workflow handles the sorting and first drafts, and you spend your time applying to roles that actually fit.
Need Help Setting This Up?
Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.