The IterJobs team ·
How to track job applications (without a messy spreadsheet)
A simple method for tracking applications through every stage, recording what you learned, and knowing when to follow up — without a spreadsheet you dread opening.
Most job searches don’t fail because of the applications. They fail because of the tracking. You apply to twelve roles, three get back to you, and two weeks later you can’t remember which recruiter asked for which portfolio.
The fix isn’t a more complicated system. It’s a smaller one that you’ll actually keep up with.
Decide what a “status” means before you start
The single biggest improvement is a fixed set of stages, applied consistently:
- Applied — you submitted, and nothing has happened yet.
- Screening — a recruiter call or an automated screen is booked or done.
- Interview — a real conversation with the hiring manager or team.
- Technical — a take-home, a live exercise, or a systems round.
- Offer — an offer is on the table.
- Accepted / Rejected / Ghosted / Withdrawn — the outcomes.
The point of a fixed vocabulary is that you can count. “Sixteen applications, four reached a technical round, one reached an offer” tells you something. A column of free-text notes doesn’t.
Record the small facts while they’re fresh
When you log an application, capture the things you’ll otherwise have to dig for later:
- The source — where the job came from. Cold application, referral, recruiter, a job board, LinkedIn, the company’s own site, a networking event.
- The job description, pasted in whole. Postings disappear, and you’ll want the exact requirements before the interview.
- The contact — name and email of the person who reached out.
- The date, plus the salary range if it was advertised.
None of this takes more than a minute at the moment you apply. Reconstructing it three weeks later takes an hour.
Update it when something changes, not on a schedule
Don’t set aside “Sunday to update the tracker”. Update the status the moment a recruiter emails you — it takes ten seconds and it’s the only way the data stays true. Every stage change should carry a date and a one-line note: “Recruiter screen, 30 min, next step is a take-home.”
That history is what lets you answer the only question that matters: where do I keep getting stuck?
Use the data, not your memory
After a few weeks, look at the shape of the search:
- If most applications never leave Applied, the problem is the application itself — resume, targeting, or both.
- If you’re reaching Interview but not Offer, look at your interview stories and the rounds you fail.
- If one source converts far better than the rest, spend more of your energy there next week.
You can’t eyeball this from memory, but it’s obvious the moment you group the data. The Sankey view in IterJobs exists for exactly this: source → stage → outcome, in one picture.
When to follow up
Two rules cover almost everything:
- After a real interview, send a short thank-you the same day, and follow up once if you haven’t heard back in a week.
- After an application with no response, one polite follow-up after two weeks is enough. Then mark it Ghosted and move on.
Tracking makes this mechanical: anything in Applied older than two weeks is either worth one
follow-up or done.
Keep the bar low
The system should survive a bad week. If updating it feels like homework, it’s too heavy — cut the fields you never read and keep the four that matter: source, status, date, and the description. Everything else is optional.
Start small. Log the next application you send in a tool built for the job, and let the history accumulate. In a month you’ll have something no memory can match.