What Is Job-Specific Outreach?
Job-specific outreach is when you create an outreach flow that is directly tied to a particular job in your saved jobs collection. Unlike a generic template, a job flow carries the full context of the opportunity — the job title, the company, the description, the contact details you have gathered — and makes that context available when composing messages. This is the most common type of outreach in recruitment. You find a promising job, identify the decision maker, and then run a structured sequence to pitch your candidates or services for that specific role.Job-specific outreach is not just about sending messages — it is the bridge between your research pipeline and your candidate pipeline. When you execute outreach steps for a job, the system automatically updates the status of candidate matches linked to that job, keeping everything in sync.
How Job Flows Differ from Templates
Understanding the distinction between templates and job flows is important for using the outreach system effectively.| Aspect | Template Flow | Job Flow |
|---|---|---|
| Tied to a record | No — standalone, reusable | Yes — linked to one specific job |
| Scheduled dates | None (delays are relative) | Calculated from creation date |
| Context available | None | Job title, company name, description, location, contact details, requirements summary |
| Status tracking | Not applicable | Tracked per job in your pipeline |
| Limit | Unlimited templates | One flow per job (enforced by database) |
| Candidate pipeline updates | No | Yes — automatically updates match statuses |
| AI context for messages | Minimal | Full job details fed to AI for personalized generation |
Each job can have exactly one outreach flow. If you need to restart outreach for a job, you can archive the current flow and create a new one. This constraint ensures clear tracking — you always know the status of outreach for any given opportunity, and there is no confusion from overlapping flows.
Creating Outreach from the Job Detail Page
The fastest way to start job-specific outreach is directly from the job detail page.Open the Job
Navigate to your saved jobs and click on the job you want to begin outreach for. This opens the job detail view with the “Contact & Outreach” tab containing the outreach section.
Start Outreach
In the “Outreach Flow” section at the bottom of the Contact & Outreach tab, you will see a dropdown button with two options:
- Create New Flow — Opens the sequence editor to build a custom sequence from scratch for this specific job.
- Use Sequence — Opens a dialog to select one of your saved template sequences. The template’s steps are copied into a new flow tied to this job, with scheduled dates calculated from today.
Customize Steps (If Creating from Scratch)
When creating from scratch, add steps one at a time. For each step, configure the channel, an optional name, and the delay in days. You can also check “Save as template” to simultaneously save the sequence as a reusable template for future use.
Begin Executing
With your sequence created, it appears in the outreach flow section on the job detail page. Each step shows its channel, scheduled date, and completion status. Click on a step to edit it, and use the “Mark as done” checkbox to track your progress. The sequence’s status updates automatically as you complete steps.
How Job Context Is Used in Messages
When you compose a message for a job-specific outreach step, the following job context is available in the composer’s context panel and fed to the AI for message generation:- Job title — the role you are reaching out about.
- Company name — the hiring company (from the linked company or global company record).
- Job description — the full listing for reference while writing your message.
- Location — where the role is based.
- Experience level — seniority requirements for the position.
- Job type and flexibility — full-time, contract, remote, hybrid, etc.
- Contact details — any decision maker information you have discovered for this job.
- Requirements summary — AI-extracted key requirements from the job description.
Tracking Outreach Per Job
Once a job has an outreach flow, you can track its progress in several places:On the Job Detail Page
The outreach section of the job detail page shows:- The flow’s current status (Not Started, In Progress, Completed)
- Each step with its channel, scheduled date, and completion status
- The message associated with completed steps (including tracking data like opens and clicks)
In the Jobs List
Jobs with active outreach flows display a status indicator in the list view, making it easy to scan your saved jobs and identify which ones have outreach in progress, which are completed, and which still need attention.In Project Analytics
If the job belongs to a search that is linked to a project, the outreach activity rolls up into the project’s analytics dashboard. You can see aggregate statistics on completed outreach steps, breakdown by channel, and trends over time.Automatic Pipeline Updates
One of the most powerful features of job-specific outreach is its automatic integration with the candidate pipeline. When you complete an outreach step that involves direct contact (email, LinkedIn message, LinkedIn connection request, or phone call):- Recruitier identifies any
candidate_job_matcheslinked to the same job. - Candidates currently in early pipeline stages (
pending,favorited, orreviewing) are automatically moved tocontactedstatus. - This keeps your candidate pipeline accurately reflecting reality without requiring manual status updates.
The pipeline update only affects matches in early stages:
pending, favorited, and reviewing. Candidates who are already in later stages (like interviewing or placed) are not moved backward. This ensures that completing an outreach step never disrupts candidates who have already progressed further in the process.Company Outreach vs. Job Outreach
While this page focuses on job-specific outreach, Recruitier also supports company-level outreach flows. Here is how they compare:| Aspect | Job Outreach | Company Outreach |
|---|---|---|
| Purpose | Reach out about a specific role | General business development |
| Context available | Full job details + company info | Company info only |
| Pipeline updates | Updates candidate-job matches | Updates company client status |
| AI templates used | Job-specific templates (candidate placement, job marketing, speculative placement) | Company outreach templates (without job reference) |
| One per record | One flow per job | One flow per company |
When to Use Job-Specific vs. Template Flows
Use the right tool for the right situation: Use a job-specific flow when:- You are reaching out about a concrete job opportunity.
- You need the job’s context (title, description, company) available in the composer.
- You want outreach progress to be tracked against that specific job.
- You want automatic candidate pipeline updates when steps are completed.
- You are building a reusable outreach pattern that works across many jobs.
- You want to standardize your team’s outreach approach.
- You are not ready to tie the sequence to a specific opportunity yet.
Archiving Job Flows
When outreach for a job is complete or you decide to stop pursuing an opportunity, you can archive the flow. Archiving:- Changes the flow’s type to
ARCHIVED - Removes it from your active outreach views
- Preserves all data (steps, messages, completion history) for future reference
- Frees the job to have a new outreach flow if you decide to re-engage later
Best Practices for Job Outreach
- Act quickly on new jobs. The first recruiter to reach a hiring manager often wins the engagement. Start outreach within 24-48 hours of saving a promising job.
- Reference specifics. Generic outreach gets ignored. Mention the job title, a specific requirement, or the company’s recent activity to demonstrate genuine interest and preparation.
- Keep it concise. Decision makers are busy. Your first email should be 3-5 sentences, not a full page.
- Follow up consistently. Most responses come after the second or third touch, not the first. Let your flow’s scheduled steps keep you on track.
- Track everything. Complete each step in the flow as you execute it. This data feeds into your project analytics and helps you refine your approach over time.
- Use the right AI template. When generating messages, select the goal that matches your situation: candidate placement, business development, speculative placement, or job marketing. Each template produces a different style of message.
Advanced
How the One-Flow-Per-Job Constraint Works
The constraint is enforced at the database level through a unique index onjob_id in the outreach_flows table. This means:
- You cannot create two active flows for the same job, even through API calls.
- When you archive a flow (changing its type to
ARCHIVED), the job_id constraint is effectively released because the archived flow’s type changes. This allows a new flow to be created for that job. - If you attempt to create a flow for a job that already has one, the system returns a conflict error. You must archive the existing flow first.
How Candidate Pipeline Integration Works Technically
The pipeline update is triggered by the step completion handler. Here is the exact sequence:- A user marks an outreach step as complete.
- The handler checks the step’s channel. If it is a contact channel (
EMAIL_MESSAGE,LINKEDIN_MESSAGE,LINKEDIN_CONTACT, orCALL), the pipeline update is triggered. - The system queries
candidate_job_matchesfor the flow’s linked job. - It filters to matches with status in (
pending,favorited,reviewing). - Those matches are batch-updated to
contactedstatus. - An SSE event is published to notify the UI of the status changes.
AI Message Generation Context for Job Flows
When you use AI to generate a message for a job flow step, the AI receives a rich context package:| Context Field | Source | Used For |
|---|---|---|
recipient_name | Contact details | Personalizing the greeting |
job_title | Job record | Referencing the specific role |
job_description | Scraped job data | Understanding requirements |
company_name | Company / Global Company | Referencing the hiring company |
user_name | Your profile | Signing the message |
language | Your settings | Generating in the correct language |
tone_of_voice | Selected tone template | Styling the message |
pitch_deck | Selected pitch deck | Including service description |
signature_instruction | Your email signature | Avoiding duplicate closings |
- CANDIDATE_PLACEMENT: You have candidates to present for the role.
- BUSINESS_DEVELOPMENT: You want to establish a new client relationship.
- SPECULATIVE_PLACEMENT: You are proactively suggesting a candidate without a specific opening.
- JOB_MARKETING: You are promoting a job opportunity to potential candidates.
Contact Priority Scoring for Decision Makers
When your job has decision maker contacts, each contact is automatically scored based on their job title. The scoring system uses keyword matching:| Score | Title Keywords |
|---|---|
| 95 | Head of Talent, Talent Acquisition |
| 90 | HR Director, CPO |
| 80 | Recruiter |
| 75 | CEO, CTO, Founder |
| 70 | VP Engineering |
| 55 | Director |
| 50 | Manager |
| 30 | Default (unrecognized title) |
Real-Time Updates and SSE Events
All job outreach actions trigger real-time notifications via Server-Sent Events (SSE):- Step completion: Other open tabs showing the same job update instantly.
- Message sent: The message status changes from draft to sent in real-time.
- Pipeline updates: Candidate match status changes are reflected immediately across all views.
Power User Tips
Handling multiple contacts for one job
Handling multiple contacts for one job
When a job has multiple decision makers, create your flow targeting the highest-priority contact first. If they do not respond after the full sequence, archive the flow and create a new one targeting the next contact. This keeps tracking clean and prevents confusing multiple outreach efforts.
Optimizing for speed on urgent roles
Optimizing for speed on urgent roles
For urgent roles, use a compressed 3-step flow with 0-1 day delays: email on day 0, LinkedIn on day 1, call on day 1. The fast cadence communicates urgency and increases the chance of a quick response. Apply a “direct and concise” tone of voice to keep messages short and action-oriented.
Re-engaging cold opportunities
Re-engaging cold opportunities
If you archived a flow months ago and the job is still open, create a new flow with a different angle. Reference the passage of time (“I reached out a few months ago about your Developer role — I notice it is still open”) and offer fresh value (new candidates, market insights). The system preserves your archived flow for reference, so you can see what you sent previously.
Using outreach data to improve templates
Using outreach data to improve templates
After running job-specific flows for a while, review which templates produce the best results. Look at completion rates (what percentage of flows reach the final step), response rates (open and reply tracking), and conversion rates (how often outreach leads to client engagement). Use this data to refine your templates.

