DEV Community

Mohamed Zaghloul
Mohamed Zaghloul Subscriber

Posted on AI-assisted

I built a $3 Google Sheet that tracks every job application from Gmail automatically

If you're applying to a lot of jobs, you know the problem: by application #60 you can't remember who you applied to, who rejected you, and who just went quiet. Spreadsheets help until you stop updating them, which for me was about day three.

So I built a Google Sheet that fills itself in from Gmail.

The Tracker tab, filled in from sample emails
Sample data: every company in these screenshots is fictional.

What it does

You make a copy of the sheet, click Job Tracker → Set up once, and allow Gmail access. From then on:

  • It reads the last 180 days of email and adds one row per application: company, role, date applied, status, and a link back to the email.
  • It checks again every morning on its own.
  • Statuses update when the next email arrives: Applied → Assessment → Interview → Offer / Rejected. Statuses only move forward, so an old "thanks for applying" never overwrites a rejection.
  • Anything still "Applied" after 21 days with no reply gets flagged Ghosted (you can change the number).
  • A Notes column the scan never touches.
  • Job-alert newsletters ("jobs you may like", "X is hiring") are ignored.

The dashboard

Dashboard with totals, response rate and applications per week

Totals by status, response rate, how many reached an assessment or interview, ghosted count, and applications per week.

How it recognises emails

It's rule-based, not AI. It knows the confirmation and status emails from Greenhouse, Lever, Workday, Ashby, SmartRecruiters, iCIMS, Workable, BambooHR, JazzHR, Breezy, Rippling, Dover, Wellfound, LinkedIn Easy Apply and Indeed, plus everyday phrases like "thank you for applying" and "we have decided to move forward with other candidates".

I tested it on a real inbox with 200+ applications. On my labelled test emails, it got the status and company name right about 9 in 10 times, and it flagged zero newsletters or alerts as applications. The misses are mostly recruiters writing in their own words; those take a quick manual edit, or you can add a phrase in Settings → Extra keywords and hit Scan now.

Privacy

Everything runs inside your own Google account as an Apps Script attached to your copy. No AI, no API keys, no outside servers, no browser extension, no subscription. Gmail access is read-only: it never sends, changes or deletes email. You can turn the daily scan off from the menu, or remove access completely at myaccount.google.com/permissions.

Setup tips (2 minutes)

  1. Open your copy in the Google account that gets your job emails.
  2. Click Job Tracker → Set up (run this first).
  3. Google will say it "hasn't verified this app". That's because the script lives in your copy, not on a public server. Click Advanced → Go to Job Application Tracker.
  4. On the permissions screen, tick Select all, then Continue.
  5. If nothing seems to happen after allowing, click Job Tracker → Set up once more. Google sometimes only authorizes on the first click.
  6. Big inboxes fill in chunks; the scan picks up again by itself about a minute later.

Honest limits

  • Gmail only, English emails only.
  • Rule-based, so roughly 1 in 10 emails needs a manual fix.
  • Recruiter emails written from scratch may not be recognised.

Get it

It's a one-time payment, pay what you want from $3 (suggested $5), with no monthly plan, unlike most tracker apps. You get the copy link right after checkout:

👉 Job Application Tracker on Gumroad

If you're in the middle of a job search, good luck out there. Questions, bugs, or an ATS it doesn't recognise? Drop a comment and I'll add it.

Top comments (0)