How to Build a Candidate Tracking System in Notion for Recruiters

Learn how to build a candidate tracking system in Notion: database relations, automations, task dependencies, and pipeline views for solo recruiters.

Jun 15, 2026
How to Build a Candidate Tracking System in Notion for Recruiters
Managing candidates as a solo recruiter means juggling resumes, interview schedules, client relationships, and countless follow-up tasks. When you're tracking tens of thousands of contacts but need laser focus on active candidates, a generic spreadsheet won't cut it.
A candidate tracking system in Notion helps recruiters manage their pipeline systematically. Photo by Resume Genius on Unsplash.
A candidate tracking system in Notion helps recruiters manage their pipeline systematically. Photo by Resume Genius on Unsplash.
Notion's database relations and task automation features let you build a custom candidate tracking system that grows with your business without the complexity of enterprise ATS software.

Why Notion Works for Recruiting Workflows

Unlike rigid applicant tracking systems, Notion adapts to your actual process. You can structure databases to match your workflow, not force your workflow into someone else's template.
For solo recruiters managing active candidates through linear stages, Notion provides:
  • Flexible database relations that connect candidates to positions and tasks
  • Automated task creation when candidates enter your pipeline
  • Task dependencies that prevent you from skipping critical steps
  • Roll-up views showing candidate progress at a glance
  • Timeline views displaying your entire recruiting pipeline with dependencies

The Three-Database Structure for Recruiting

The foundation of an effective recruiting system uses three interconnected databases.

Candidates Database

This database stores your active candidates who have crossed the threshold from your prospect database into active consideration.
Key properties:
  • Name (title property)
  • Contact information
  • Status (select property with stages like Screening, Interview, Presented, Offer)
  • Related positions (relation to Clients/Positions database)
  • Related tasks (relation to Tasks database)
  • Progress percentage (rollup showing completed tasks)

Clients and Positions Database

Track the roles you're actively recruiting for, including client details and position requirements.
Key properties:
  • Position title (title property)
  • Client name
  • Job description
  • Requirements
  • Related candidates (relation back to Candidates database)

Tasks Database

Every action item for moving candidates through your pipeline lives here.
Key properties:
  • Task name (title property)
  • Status (Notion's task database with status groups)
  • Related candidate (relation to Candidates database)
  • Related position (relation to Clients/Positions database)
  • Due date
  • Dependencies (blocking tasks)
  • Assignee (if working with a team)

Setting Up Database Relations

Database relations connect your three databases so information flows between them.

Connect Candidates to Positions

In your Candidates database, add a relation property called "Positions" that links to your Clients/Positions database. Notion will prompt you to enable a reciprocal relation in the Positions database — toggle it on to keep both databases in sync.
When you open a candidate's page, you can now select which positions they're being considered for. Opening a position's page shows all related candidates.

Connect Tasks to Candidates and Positions

Your Tasks database needs two relation properties:
  • "Candidate" relating to the Candidates database
  • "Position" relating to the Clients/Positions database
This lets you see all tasks for a specific candidate or position.

Add Roll-Ups to Track Progress

In your Candidates database, add a rollup property that counts completed tasks versus total tasks. This gives you an instant progress percentage for each candidate.
Rollup configuration:
  • Relation: Related tasks
  • Property: Status
  • Calculate: Show percent checked (for checkbox status)
Now each candidate page displays their completion percentage automatically.

Automating Task Creation

Manual task creation for every candidate wastes time. Notion's database automations eliminate this repetitive work.

Create a Basic Automation

When you add a position to a candidate, Notion can automatically create your standard workflow tasks.
Automation trigger: When position is added to candidate
Automation actions:
  1. Create "Get Resume" task
  1. Create "Initial Call" task
  1. Create "Present to Client" task
  1. Create "Schedule Interview" task
  1. Create "Follow-up" task
Each created task automatically links to both the candidate and the position using the automation's context variables.

Set Dynamic Due Dates

Within your automation, you can set relative due dates:
  • Get Resume: Today
  • Initial Call: Today + 1 day
  • Present to Client: Today + 3 days
  • Schedule Interview: Today + 10 days
This ensures your pipeline keeps moving without manual date entry.

Using Task Dependencies

Task dependencies prevent you from skipping critical steps in your recruiting process.

Enable Dependencies

In your Tasks database settings, enable the Dependencies feature. This adds a "Blocking" property to your tasks.

Set Up Blocking Relationships

For a linear recruiting workflow:
  • "Get Resume" blocks "Initial Call"
  • "Initial Call" blocks "Present to Client"
  • "Present to Client" blocks "Schedule Interview"
When you mark "Get Resume" as incomplete, Notion won't let you complete "Initial Call" until the resume is obtained.

Configure Automatic Date Shifting

Notion offers three dependency behaviors:
Shift only when dates overlap: Tasks shift forward only when their dates would overlap.
Shift and maintain time between items: If you push "Get Resume" back one week, "Initial Call" automatically shifts one week later.
Do not automatically shift: Dependencies don't affect dates (useful when dates are fixed by client schedules).
For recruiting workflows, "shift only when dates overlap" typically works best since client interview availability often overrides your ideal timeline.

Viewing Your Pipeline

Timeline View with Dependencies

Create a Timeline view of your Tasks database showing:
  • All tasks grouped by candidate
  • Date range: Due date
  • Dependencies displayed as connecting lines
This visual timeline shows your entire recruiting pipeline and identifies bottlenecks instantly. When "Get Resume" is delayed, you see exactly how it affects downstream tasks.

Filtered Views for Daily Focus

Create focused views to stay on track:
  • Due Today: Tasks with due date = today and status ≠ done
  • This Week: Tasks due in next 7 days
  • Blocked: Tasks that cannot start because dependencies aren't complete
  • By Candidate: Group tasks by candidate to see individual progress

Full-Page vs Inline Databases

Use full-page databases as your source of truth, then create linked database views on your dashboard pages.
Why this matters: Full-page databases live at a dedicated URL. Inline databases embedded in pages are harder to navigate to directly.
Practical conversion tip: You can convert a full-page database into inline by dragging it under another page in the sidebar, then using the database menu to turn it into inline.
Create your three databases as full pages, then embed linked views wherever you need them.

Advanced Techniques

Separate Clients from Positions

As your practice grows, consider splitting the Clients/Positions database into two:
  • Clients database: Company information, contacts, contracts
  • Positions database: Individual job requisitions
Relate Positions to Clients, then relate Candidates to Positions. This three-layer structure prevents duplicate client data entry.

Template-Based Workflows

For positions with unique workflows (executive search vs contract placement), create position templates that trigger different task sequences.
Use database automation conditions:
  • If Position Type = Executive Search
  • Then Create tasks: Research, Networking, Presentation, Multiple Interviews
  • If Position Type = Contract Placement
  • Then Create tasks: Resume Review, Skills Test, Client Introduction, Onboarding

Integration with External Tools

Notion's API lets you connect your recruiting system to:
  • Email: Auto-create candidates from email interactions
  • Calendar: Sync interview scheduling
  • LinkedIn: Import candidate profiles
  • Job boards: Track application sources
These integrations work through automation platforms like Make, Zapier, or custom API implementations.

Common Pitfalls to Avoid

Too Many Properties Too Soon

Start with essential properties only. Add complexity as you identify genuine needs. A database with 30 properties is overwhelming to maintain.

Forgetting to Set Relations as Two-Way

When creating relation properties, Notion asks if you want a two-way relation. Almost always say yes. This lets you navigate from candidates to positions AND from positions to candidates.

Not Using Database Templates

Create templates for candidate pages, position pages, and task sequences. Templates ensure consistency and save setup time.

Inline Databases Everywhere

Creating inline databases makes navigation difficult. Use full-page databases with linked views instead.

Getting Started

Start with the minimal viable system:
  1. Create your three databases (Candidates, Positions, Tasks)
  1. Set up basic two-way relations between them
  1. Create one simple automation for task creation
  1. Use the system with 2-3 real candidates
  1. Refine based on what actually slows you down
You can always add roll-ups, dependencies, and advanced automations after you've validated the basic structure.

Next Steps

Building a recruiting system in Notion takes initial setup effort, but eliminates daily friction once established. Start simple, automate repetitive patterns, and expand as your volume grows.
Ready to build your recruiting system? Book a free consulting call to verify if this approach will work for your specific recruiting workflow.