Collect job applications in a hiring tracker
Each application becomes a row on the Candidates tab, with the scoring columns left empty for reviewers to fill in.
New submission on your job application form
Add a row to the Candidates sheet with role, name and the applicant's answers
One-directional. A submission triggers the action — nothing is written back into your form.
Screening happens in a spreadsheet more often than in an applicant tracking system, particularly for a handful of roles a year. This flow puts each application on the Candidates tab as it arrives, in the same column order every time, so the panel is comparing like with like.
A hiring manager sets it up once, shares the file with two or three interviewers, and reads down the sheet instead of down an inbox. Reviewers add notes and scores in columns the automation never writes to.
Setting it up
- 1
Publish the application form with Position Applied For as a select question listing your open roles, so the Role column filters cleanly rather than collecting near-identical job titles.
- 2
In Google Sheets, create a Candidates tab and put the mapped headers on the left — Candidate, Email, Role, Start Date, Experience, Skills — then Stage, Reviewer and Score as the last three columns.
- 3
Format Start Date as a date column before any applications arrive, and set Experience and Skills to clip their text so one long answer cannot make a row several screens tall.
- 4
In Zapier, set formformform as the trigger app with the New Submission event, connect your account, choose the application form and load a test application.
- 5
Add the Google Sheets Create Spreadsheet Row action, connect the Google account that owns the tracker, and point it at the Candidates worksheet.
- 6
Map Full Name, Email Address and Position Applied For into Candidate, Email and Role, then Work Experience and Relevant Skills into their columns.
- 7
Send Available Start Date through a Zapier Formatter Date/Time step set to YYYY-MM-DD first, so the column sorts chronologically instead of alphabetically.
- 8
Leave Stage, Reviewer and Score unmapped, protect the six mapped columns so a reviewer cannot type over an application, then test and switch the Zap on.
What maps where
Using the Job Application Form as the starting point. These are its real fields — swap in your own and the mapping works the same way.
| Form field | Google Sheets |
|---|---|
| Full Name | Candidate column on the Candidates tab |
| Email Address | Email column |
| Position Applied For | Role column, used to filter one role at a time |
| Available Start Date | Start Date column, formatted as a date |
| Work Experience | Experience column |
| Relevant Skills | Skills column |
Variations worth knowing
Add a second tab holding =FILTER(Candidates!A:F,Candidates!G:G="Interview") so it shows only the people whose Stage has been set to Interview. Reviewers change Stage on the main tab and the shortlist rebuilds itself, which saves maintaining two copies of the same applicant.
If two roles are running at once and the panels do not overlap, use Zapier Paths on Position Applied For and give each path its own Create Spreadsheet Row action pointing at that role's worksheet. Keep the header row identical across tabs so you can stack them later with a QUERY.
If something isn't arriving
Zapier hands Google Sheets a string, and a column that has already seen text keeps treating new values that way. Format the column as a date, run the answer through Formatter first, and re-enter the existing values with =DATEVALUE() to convert what is already there.
The Cover Letter and Work Experience answers arrive with their line breaks intact. Select those columns, set text wrapping to Clip and give the row a fixed height. The full answer is still in the cell — click it and read it in the formula bar or the side panel.
Frequently asked questions
Can reviewers add notes without the automation overwriting them?
Yes. Each submission creates a new row at the bottom and only fills the columns you mapped. Existing rows are never touched, so notes and scores typed into Stage, Reviewer and Score stay exactly where the reviewer left them.
Can applicants see which stage they are at?
No. The flow runs in one direction only — a submission creates a row — and nothing is read back out of the spreadsheet or written into the form. Anything a candidate should see has to be sent by you, from your email tool.
Should I share the whole file with the interview panel?
Share the file and protect the six mapped columns rather than making copies. Reviewers get edit access to Stage, Reviewer and Score only. Copies drift apart within a day, and the Zap keeps writing to the original whichever copy people are reading.
Related automations
- Build an RSVP list with a live headcount
Every registration adds a row to the RSVPs worksheet, and a SUM keeps the headcount current for catering.
- Capture feedback for pivot table analysis
Every survey response lands on the Responses tab with score, category and comment, ready for a pivot table.
- Log every lead in a master spreadsheet
Every lead form submission becomes a row on the Leads tab, with name, work email, company and source already filled in.
- Record orders in a packing list spreadsheet
Each order lands on the Orders tab with product, quantity, variant and customer, ready to pick and pack from.
- Track support requests in a Tickets tab
Each support request lands on the Tickets tab with issue type, priority and reporter email, ready to sort and mark resolved.
- Add every inbound enquiry to your Notion leads database
Every business enquiry lands in your Notion Leads database as a page tagged New, with the company and inquiry type already filled in.
Build the form first
The automation needs somewhere to fire from. Publish a form, connect it once, and every submission from then on runs this flow.
Start free