Skip to main content

How candidate sync works

3 min read · Jan 22, 2026
Quick Answer

When you approve a candidate, they are automatically created in your ATS. Status updates from your ATS (interviewed, rejected, hired) sync back to daily.dev.

Sync overview

Candidate sync keeps daily.dev Recruiter and your ATS in sync:

  • Push: Approved candidates flow to your ATS
  • Pull: Status changes flow back to daily.dev
  • Dedupe: No duplicate records created

This eliminates manual data entry and keeps both systems accurate.

Push: candidates to ATS

When it happens

Sync occurs when you approve a candidate:

  1. You review a candidate brief
  2. You click Approve
  3. Candidate is created in your ATS
  4. Introduction email is sent

What gets pushed

Field Synced
Name Yes
Email Yes
Phone If available
Location Yes
Profile summary Yes
Screening answers Yes
Source "daily.dev Recruiter"
Job association Yes

Job association

Candidates are associated with the correct job in your ATS:

  • daily.dev role maps to ATS job requisition
  • Mapping is automatic when job titles match
  • You can configure manual mapping if needed

Pull: status from ATS

What gets pulled

Status changes in your ATS sync back:

ATS action Reflected in daily.dev
Moved to interview Status updated
Rejected Status updated
Hired Status updated
Archived Status updated

Sync timing

  • Status pulls happen automatically
  • Typically within minutes of ATS change
  • Some ATS have slight delays

Why this matters

  • Track progress without switching apps
  • See full pipeline in daily.dev
  • Know outcomes to improve matching

Deduplication

We prevent duplicate candidates:

How it works

  1. Before creating a new record, we check for existing candidates
  2. Matching on email address primarily
  3. If match found, we update existing record
  4. If no match, we create new record

Benefits

  • No cluttered ATS with duplicates
  • Clean candidate data
  • Accurate reporting

Sync settings

You can configure:

  • What data syncs: Choose fields to include
  • Job mapping: How daily.dev roles map to ATS jobs
  • Default stage: Where new candidates land in your pipeline

Access these in organization settings > Integrations.

Data handling

Your ATS is source of truth

  • If data conflicts, ATS wins
  • Status in ATS overrides daily.dev
  • Makes your existing workflow authoritative

What we do not sync

  • Internal notes you add in ATS
  • Custom fields (varies by ATS)
  • Documents uploaded directly to ATS

Troubleshooting sync

Candidate not appearing in ATS?

Status not updating?

  • Allow a few minutes for sync
  • Check ATS webhook settings
  • Verify stage mapping is correct

Wrong job association?

  • Check job mapping in settings
  • Manually reassign in ATS if needed
  • Update mapping for future candidates

Frequently Asked Questions

Frequently Asked Questions

Usually within seconds of approval. Status pulls happen continuously, typically syncing within minutes of ATS changes.

Was this article helpful?

Browse Help Center

Join the movement

The best teams don't wait.
They're already here.

Today, it's your turn.