Quick overview
I check your Gmail every hour for job threads and work out whose turn it is. When an application goes quiet, I write a follow-up draft in the same thread. Interview times become unconfirmed calendar holds, and a Monday email shows replies by job board.
How it works
- Every hour I search your Gmail for job mail from the last 21 days by default and open each thread.
- I work out one application per company: its stage, whose turn it is, any reply-by date and any interview time.
- When you spoke last, or the company only sent an automatic acknowledgement, and the thread has gone quiet, I save a short follow-up as a Gmail draft in that thread. By default applied waits 7 days, interview waits 3 working days, and two follow-ups is the limit.
- An interview email with a stated date and time gets an unconfirmed calendar hold. If your calendar is busy then, I put the clash in the row instead.
- Every change is saved to your Applications tab, and a rejection closes the row.
- Every Monday at 8 I email you the funnel, and you can change the day. It shows replies and the median days to a reply for each source. It also lists who has gone quiet, this week's interviews and reply-by dates, and what is waiting on you.
I never send anything to an employer. Every draft waits for you.
Setup
- Make a Google Sheet with a tab named
Applications. The column names are in the README.
- Connect your Gmail, Google Sheets and Google Calendar credentials on the nodes that ask for them.
- Open Your Settings and fill in my_email, my_name and sheet_url. calendar_id starts as
primary, your main calendar.
- Set your timezone in the workflow settings, so a hold lands at the hour the email says.
- Click Import The Last 60 Days, read the sheet and the drafts I saved in Gmail, then switch the workflow on.
Requirements
A Google account with Gmail, Sheets and Calendar, and n8n 1.x or 2.x. No AI service and no paid add-on. It reads English job mail.
Customization
In Your Settings I keep the search window, the days before each follow-up, the follow-up limit, the hold length and the ghosted limit. Set drafts_on or holds_on to no to switch either one off. The word lists that decide each stage sit at the top of the Code node called Work Out Every Application.
Additional info
I ran it on n8n against a Gmail inbox with test emails: it read the threads, wrote the Applications row and saved the follow-up draft inside the right thread, and a second run made no second draft. The calendar hold has passed my offline checks but has not yet run against a live calendar. Two roles at one company share one row.
It is free to use.
Support: [email protected]