Template Suggestion - For Employees


Does anyone have a template suggestion or a template they use to keep up with employee vacations, PTO, injuries (workers comp), start date, status of employment etc.

Thank you.


checkout Airtable Universe

specifically, first HR example I found


Thank you Mike. I’ve played around with the KasPer base- I guess it’s just a lot of information. But this is the closest thing I could find for HR/employee based. I guess the only thing it’s missing that I have had a hard time building myself is the PTO tracking. I appreciate your help.


Hi there Holli,

I have a PTO base that you may find helpful… I had started trying to calculate the total number of hours an employee has taken, but abandoned it a while ago as we use an HR specific program to handle payroll. However, this base has been extraordinarily helpful in terms of PTO Requests and Approvals, and it creates an up-to-date PTO calendar so that managers can see who is out of the office.

Here’s how it works… You will need a Zapier account for the workflow, but you may be able to accomplish this with a free account depending on how many requests you expect.

The base consists of several tables:

  1. Requests: Populated by a form filled out by employees on our company intranet, or by manual entries from our HR manager.
  2. Approvals: Populated by a form filled out by managers.
  3. Employees: A list of employees, their location, and their supervisor.
  4. Supervisors: A list of supervisors and email addresses.

Outline of Process:

  1. Employee fills out PTO Request Form
  2. The [Requests] table automatically assigns a “Request ID” (randomly generated using an Autonumber field and the employee’s location).
  3. The {Request ID} and a link to the Approval form (password protected as an extra layer of security), is emailed to the employee’s supervisor.
  4. The supervisor clicks the link, enters the password, and then approves or denies the request by entering the {Request ID} in the form.
  5. A Zap crawls the [Approvals] table and looks for new records. When it sees one, it looks for the corresponding {Request ID} on the [Requests] table. If it finds a match, it links the approval to the request. The request dates then land on the PTO calendar (if approved), and an email is sent to the employee letting them know their request was approved or denied.
  6. If it doesn’t find a match (i.e., if the supervisor has made a typo), a separate Zap sends another email to let the supervisor know they need to try again.

Other notes…

  • We maintain a separate database of employee information. When a new employee is added, a Zap automatically adds the employee to the PTO base. When we change an employees status to “Inactive” this change also flows to the PTO base.
  • We also maintain a separate “Travel Requests” base. When a travel request is approved, that information is also moved to the PTO base, and notated with an emoji like “:books:” so we can easily see who is out of the office for training or a meeting as opposed to vacation.
  • Manual entries from HR skip the whole emailing process, and land directly on the calendar.

I know this is a lot of information… if it’s something you’re interested in, I’m happy to dive in further/explain the associated Zaps. :slight_smile:

EDIT: I did leave the PTO Hours fields in this example base that might help with your calculations as well - check out the PTO Calc Views under [Requests] and [Employees].


Neads - this is awesome! Thank you so much! The base has so much to offer and your instructions are superb! Thank you.


Yay! You’re so welcome! :slight_smile: Always happy to help!


Zapier…hummm…I’ve tried to dabble in it, but just find it over my capabilities. I think I need more time to learn it. I’m going to try and utilize it without zapier right now, as we do not have many employees so it should be easy to keep track of. But as soon as I get the hang of it - I’m using all of your suggestions!


Zapier can be a little intimidating! If it helps to get you started… The general makeup of a zap is a trigger (i.e. a new record in a view), and an action (i.e. create a record, send an email, etc.).

So for example, the first zap for this process is an email to the employee’s supervisor. It has three steps:

  1. Trigger - New Record in a View (in this case, a new record under the Active Requests view on the [Requests] table).
  2. Filter - looks at the field {Entered by HR} and only continues if the value (boolean) is false. (This is where it skips the email step if HR has manually entered the PTO dates).
  3. Action - Send Email (via Gmail account). Here you build the email template - you can choose fields from the Airtable record to appear in the email. The screenshot below uses an HTML template but you can do this with plain text as well.

1 Like