◈ Mail → Excel

Excel export for Recruiters

By the Mail → Excel team · Updated 2026-10-20

Applications arrive faster than anyone updates the ATS. A weekly export keeps the pipeline honest. This page lists the exact columns, an example row and the command that produces it.

Columns to keep

ColumnWhy it matters
candidateDisplay name for humans; deduplicate by email, not by name.
emailLowercase address — the true unique key for people.
roleThe position applied for; makes the pipeline filterable.
sourceWhere the application came from (job board, referral, inbound).
stagePipeline stage as a fixed vocabulary, not free text.

Example row

One real-shaped row from this role’s export:

candidateemailrolesourcestage
Maria Petrovamaria@example.comBackend EngineerLinkedInscreening

Export it in one command

python mail_to_excel.py \
  --host imap.example.com --user you@example.com \
  --days 31 --fields candidate,email,role,source,stage \
  --out recruiter.xlsx

The --fields option is what turns a raw dump into a report your role can use.

Provider notes

Gmail app passwords need 2-step verification enabled. Recruiting agencies on Google Workspace should use OAuth.

Two pitfalls that ruin the file

Next step

Step-by-step: export recruiter email to Excel · all roles · ready script ($3)

FAQ

Can this feed an ATS?

Export CSV instead of Excel and map columns to your ATS import template.

Is candidate data safe?

The script runs locally and nothing is uploaded. Still treat the file as personal data and restrict access.

Is there a ready script for this?

Yes — the Python script exports any IMAP mailbox with the fields listed above; it costs $3 and runs locally.

Related guides