---
title: "Qualify target accounts from their job postings with OpenAI"
slug: "job-postings-account-qualification-openai-google-sheets"
type: "n8n-workflow-template"
url: "https://automationbyexperts.com/n8n/job-postings-account-qualification-openai-google-sheets"
n8n_url: "https://n8n.io/workflows/20496-qualify-target-accounts-from-job-postings-with-apify-openai-google-sheets-and-telegram/"
workflow_json: "https://automationbyexperts.com/static/n8n/job-postings-account-qualification-openai-google-sheets.json"
actor: "Company Domain to Job Postings - Greenhouse, Lever, Ashby"
actor_url: "https://automationbyexperts.com/apify/company-domain-to-job-postings"
schedule: "every Monday at 8:00"
apps: ["Apify", "OpenAI", "Google Sheets", "Telegram"]
published: "2026-10-08"
---

# Qualify target accounts from their job postings with OpenAI

This n8n workflow reads your target account list from Google Sheets every Monday at 8:00, pulls each company's open roles from the job board it really uses, has OpenAI score whether that hiring signals a need for what you sell, and sends a ready opener to Telegram for the accounts worth contacting.

**Use it on n8n.io:** [Qualify target accounts from job postings with Apify, OpenAI, Google Sheets and Telegram](https://n8n.io/workflows/20496-qualify-target-accounts-from-job-postings-with-apify-openai-google-sheets-and-telegram/)  
**Workflow JSON:** https://automationbyexperts.com/static/n8n/job-postings-account-qualification-openai-google-sheets.json  
**Actor it runs:** [Company Domain to Job Postings - Greenhouse, Lever, Ashby](https://automationbyexperts.com/apify/company-domain-to-job-postings) ($0.001 per job posting)  
**Runs:** every Monday at 8:00

## How it works

A company hiring its first RevOps lead or three data engineers is telling you what it is about to buy. This workflow watches that signal for the accounts you already care about: one Google Sheet tab holds their domains, and every week it checks who each one is hiring.

The Apify actor resolves each domain to the applicant tracking system the company actually uses, such as Greenhouse, Lever, Workday or Ashby, and returns the open roles. Postings already read in an earlier week are dropped before any AI sees them, and titleKeywords narrows the rest, so tokens are only spent on new, relevant roles.

OpenAI scores each account from 0 to 100 against the problem you solve, names the signal and quotes the evidence. Every account lands in the Briefs tab, rejects included, so you can tune minScore. The ones at or above it get a subject line and a short opener built on the hiring observation, sent to Telegram for you to review.

## Nodes in the workflow

1. Every Monday at 8am (Schedule Trigger)
2. Set your targets (Edit Fields)
3. Read your account list (Google Sheets)
4. Collect the domains (Aggregate)
5. Find who they are hiring (Apify)
6. Skip postings already read (Remove Duplicates)
7. Group postings by account (Code)
8. OpenAI model (OpenAI Chat Model)
9. Read the hiring signal (Basic LLM Chain)
10. Signal format (Structured Output Parser)
11. Format the account row (Edit Fields)
12. Save every account brief (Google Sheets)
13. Keep the accounts worth working (Filter)
14. Cap the accounts per run (Limit)
15. Write the outreach opener (Basic LLM Chain)
16. Send the account brief to Telegram (Telegram)

## Settings you edit

| Setting | Default | What it does |
|---|---|---|
| `whatYouSell` | A RevOps service that cleans up CRM data and keeps it clean | One sentence on what you sell. |
| `problemYouSolve` | Their pipeline reporting is wrong because nobody owns CRM hygiene, so forecasts… | The pain you remove. The model matches postings against this, so be specific. |
| `signalsYouCareAbout` | first RevOps or sales ops hire, a data engineer joining a go-to-market team, an… | The hiring patterns that mean an account needs you, in plain words. |
| `titleKeywords` | revops, revenue operations, sales operations, data engineer, analytics engineer | Comma separated job title words. Only matching roles are read, the cheapest fil… |
| `locations` | (empty) | Optional. Comma separated locations to keep. Empty keeps every location. |
| `domainColumn` | Domain | The header of the column in your sheet that holds the company domains. |
| `accountTab` | Accounts | The sheet tab that holds your account list. |
| `briefTab` | Briefs | The empty sheet tab the account briefs are written to. |
| `maxJobs` | 100 | Most job postings one run returns, which is also what caps the Apify cost of a … |
| `minScore` | 65 | Accounts scoring at or above this get an opener. 60 to 70 is the useful band. |
| `maxAccounts` | 5 | Most openers one run sends. |
| `googleSheetUrl` | PASTE_YOUR_GOOGLE_SHEET_URL_HERE | The URL of the Google Sheet with your account list. |
| `telegramChatId` | PASTE_YOUR_TELEGRAM_CHAT_ID_HERE | The Telegram chat the briefs are sent to. |

## Google Sheet columns

Company, Domain, Score, Signal, Evidence, Open roles, New roles, Roles seen, Example posting, Checked

## How to set it up

1. **Get the workflow into n8n** - Open it on n8n.io and choose "Use for free", or copy the workflow JSON from this page and paste it onto an empty n8n canvas.
2. **Connect Apify and OpenAI** - Create a free Apify account and connect it in the Find who they are hiring node, then connect an OpenAI account in the OpenAI model node.
3. **Prepare the sheet and Telegram** - Put your account domains in one tab (stripe.com, not a LinkedIn URL) and add an empty tab for the briefs. Set accountTab, briefTab and domainColumn to match, create a bot with @BotFather and paste your chat id into telegramChatId.
4. **Describe what you sell, run once, activate** - Fill in whatYouSell, problemYouSolve and signalsYouCareAbout, run the workflow once by hand and read the briefs. Then activate it.

## What it costs

The workflow is free. Each run bills the actor on your own Apify account at $0.001 per job posting. At the current price a full run of 100 accounts costs $0.10, so 4 runs a month come to at most about $0.40. The Apify free plan covers a short account list per run. OpenAI tokens are billed on your own OpenAI account.

## FAQ

### How do I use job postings as a buying signal?

Import this workflow into n8n, list your target company domains in a Google Sheet and describe the problem you solve in the Set your targets node. Every Monday it reads their open roles and tells you which accounts are hiring for that problem now.

### Which job boards does it read?

The actor finds the applicant tracking system each company uses, including Greenhouse, Lever, Workday, Ashby and Recruitee, and reads the roles from there.

### Why do most accounts score low?

Most companies are not hiring for your problem in a given week, so a low score is the correct result. Raise or lower minScore to change how many openers you get.

### Does it send the emails?

No. It sends the opener to Telegram so you can read it first. Nothing goes out under your name without you.

### What does it cost to run?

The workflow is free. Each run bills the Company Domain to Job Postings actor on your Apify account per posting, capped by maxJobs, plus OpenAI tokens for the scoring and openers on your own OpenAI account.

## More n8n templates

- [Weekly AI search readiness audit with fix tickets in Google Sheets](https://automationbyexperts.com/n8n/site-ai-search-audit-fix-tickets-google-sheets): This n8n workflow audits your site every Monday at 7:00 for classic SEO, AI engine readiness (GEO) and answerability (AEO), compares every page with the previous week, and has OpenAI write a prioritized fix ticket for each page that dropped, sits under your floor or has a critical issue.
- [Score journalist requests and draft press pitches with OpenAI](https://automationbyexperts.com/n8n/journalist-request-pitches-openai-telegram): This n8n workflow collects open journalist source requests every morning at 8:00, has OpenAI score each one against your real expertise, saves every request to Google Sheets and sends a drafted pitch to Telegram for the few worth answering.
- [Spitogatos.gr listing alerts in Telegram and Google Sheets](https://automationbyexperts.com/n8n/spitogatos-alerts-telegram-google-sheets): This n8n workflow checks Spitogatos.gr every morning at 8:00 for listings first posted in the last 24 hours in the areas you pick, saves each one to Google Sheets with its price per m² and the agent's phone number, and sends a summary to Telegram.
- [Wallapop alerts in Telegram and Google Sheets](https://automationbyexperts.com/n8n/wallapop-alerts-telegram-google-sheets): This n8n workflow checks Wallapop every hour for new listings that match your keywords and price range, saves every new item to a Google Sheet, and sends the ones at or under your alert price to Telegram in one message.
- [AutoTrader.ca used car alerts in Telegram and Google Sheets](https://automationbyexperts.com/n8n/autotrader-ca-car-alerts-telegram-google-sheets): This n8n workflow searches AutoTrader.ca every morning at 7:00 for cars listed in the last day that match your makes, budget, mileage and location, saves each new car to Google Sheets, and sends the ones priced below AutoTrader's market median to Telegram.
- [Reddit buying-intent leads in Google Sheets and Slack](https://automationbyexperts.com/n8n/reddit-leads-google-sheets-slack): This n8n workflow searches Reddit every morning at 8:00 for posts and comments from people looking to buy what you sell, scores each one 0 to 100 for buying intent, saves every new lead to Google Sheets and posts the hottest ones to Slack as one digest.

---

Part of [AutomationByExperts](https://automationbyexperts.com) - see [all n8n templates](https://automationbyexperts.com/n8n) or [request a new one](https://automationbyexperts.com/suggest).
