How to Track Job Applications Without Letting It Slide
Key takeaways
- Tracking fails for a predictable reason: the record is created at the moment you have the least energy to create it.
- Record five things at submission time and you can reconstruct everything else later. Record nothing and you cannot.
- A duplicate application is the most common and most avoidable tracking failure, and the one interviewers notice.
- Status updates arrive in your inbox, which is why status is the part worth automating first.
Every guide to tracking job applications tells you to be disciplined. That advice fails for the same reason most advice about habits fails: the effort is charged at exactly the wrong moment. You finish an application, you are done thinking about your own work history, and the system asks you to think about it again. So the row does not get written, and two weeks later you cannot tell whether you applied to a company or just meant to.
The fix is not more discipline. It is arranging the system so the record gets created at the one moment you are guaranteed to be present: the moment you click submit.
What goes wrong, specifically
Tracking does not collapse gradually. It collapses at three identifiable points, and knowing them tells you what to build.
The first is the burst. You have a productive evening, you apply to eleven roles, and you log none of them because logging eleven rows at 11pm is its own chore. The second is the duplicate. A posting reappears under a new title or on a different board, you apply again, and a recruiter now has two applications from you for one role. The third is the status drift. You applied, someone replied, you read the email on your phone, and the sheet still says Applied three weeks after you were rejected. By then the tracker is not just incomplete, it is misleading, and a misleading tracker is worse than none because you act on it.
What to capture, and when
| Moment | What to record | Why then |
|---|---|---|
| When you find a posting worth applying to | Company, title, link, status of Bookmarked | Stops the tab pile from becoming your memory |
| When you submit | Date, location, salary as posted, status of Applied | The posting may be gone tomorrow, along with the salary band |
| When a human replies | Status, name, next step | The name is the part you forget and need on the call |
| When it ends | Status of Rejected or Withdrawn, one line of why if you know | Closed rows are what make the pattern visible |
Five fields at submission time is the floor: company, title, link, date, and the salary the posting advertised. From those you can reconstruct almost anything later. Without the link in particular, a pulled posting takes the details with it.
Build the system in four steps
1. Put the record where you can filter it
One sheet, not one per month and not one per role type. The single question a tracker answers better than your memory is "have I already applied here," and splitting the data destroys exactly that. A spreadsheet in your own Drive keeps it portable and shareable without putting your search inside somebody's product account.
2. Make status a fixed list
Bookmarked, Applied, Screening, Interview, Offer, Rejected, Withdrawn. Written down once, never extended mid-search. The value of a status column is that it filters, and free text does not filter. If you find yourself wanting an eighth value, it usually belongs in notes.
3. Check for duplicates before you apply, not after
This is the step almost nobody builds, and it is the one that prevents the most embarrassing failure. Before starting an application, search the sheet for the company name. If you are applying at volume, having that check happen automatically on the job posting itself, rather than as something you remember to do, is worth more than any other refinement to the sheet.
4. Decide how status gets updated
Rejections, interview invitations and offers all arrive in your inbox. That means your email already holds the current state of every application you have open, and your spreadsheet is a stale copy of it. Either you set a weekly slot to reconcile the two, or you let something watch the inbox and update the Status column for you. What does not work is intending to update it as the emails arrive.
Status values worth using
| Status | What it means | What you do with it |
|---|---|---|
| Bookmarked | Worth applying to, not applied yet | Your queue for the next session |
| Applied | Submitted, no human response | Sort by days elapsed to build the follow-up list |
| Screening | A recruiter is engaged | Prepare the salary answer before the call |
| Interview | Scheduled or completed with the team | Log names and promises here |
| Rejected | Closed by them | Feeds the only honest measure of what is working |
Reading the tracker once it has data
After fifty or so rows the sheet starts answering a question you cannot answer any other way: where the search is actually stalling. If almost everything sits at Applied with no reply, the problem is upstream, in targeting or in the CV, and applying harder will not fix it. If you reach screening often but rarely go further, the problem is in the conversation, which is a completely different thing to work on. Without a record, both look identical from the inside: a lot of effort and not much happening.
Common mistakes
- Logging in batches at the end of the week. The rows you write four days later are missing the link, the salary and the exact title, which were the parts worth keeping.
- Tracking inside one job board. It will faithfully record the fraction of your search that happened there and silently omit every company career site, which is where a lot of the good roles live.
- No duplicate check. Reposted roles are extremely common. Applying twice is the one tracking failure other people see.
- Treating no reply as a status. No reply is the absence of an event. Days since applied is the number you actually want, and a spreadsheet can compute it.
- Letting status rot. A tracker that says Applied for roles that closed a month ago will have you following up on dead threads and skipping live ones.
- Rebuilding the system instead of using it. Adding formulas and dashboards feels like progress and is not. Eight columns and a filter will carry you to an offer.
Where the effort should actually go
Tracking is admin, and admin should cost as close to zero as you can make it, because every minute spent maintaining the record is a minute not spent on the applications themselves. Capture at the moment of submission, keep status current from the place status actually arrives, and check for duplicates before you start rather than after. Everything else in a tracking system is preference.
Where this site comes in. Job Application Tracker for Google Sheets is a browser extension that does the admin described above: it writes every application you submit into a spreadsheet in your own Google Drive, shows an Applied or Not Applied badge on postings you have seen before, and fills repeat fields on supported application forms from answers you saved yourself, with no AI generating anything. It works on Chrome, Firefox and Edge.
Frequently asked questions
How should I track job applications?
In one filterable place, updated at the moment you submit rather than later. Record company, job title, the posting link, the date you applied and the salary as advertised, then keep a status value from a short fixed list. The specific tool matters far less than whether the row gets written while the details are still in front of you.
How do I avoid applying to the same job twice?
Check the company name in your tracker before you start an application, not after. Reposted and cross-posted roles are common, and the same job often appears under a slightly different title weeks later. Having that check surface on the job posting itself, rather than relying on your memory of a sheet in another tab, is what makes it reliable at volume.
How often should I update my job application tracker?
At submission time for new rows, and continuously for status. Status changes arrive by email, so any process that batches them weekly leaves the tracker wrong for up to a week, which is exactly when you might follow up on something already closed. If you are going to automate one part of tracking, automate status.
How many applications is normal before an offer?
There is no honest universal number, and anyone quoting one is guessing at your market, level and location. What your own tracker can tell you, after fifty or so rows, is far more useful: your ratio of applications to replies, and replies to interviews. Those two numbers say whether to fix targeting, fix the CV, or simply keep going.