How to create an automated applicant tracking system (ATS)

Blog post banner image for how to create an automated applicant tracking system tutorial.

Hiring can be complex, with many moving parts and details to manage. Alongside juggling multiple interviews and applicant details, there’s a need to keep track of the many interactions between an interviewer and applicants.

Without proper data management, it can be difficult to remember who is interviewing and where each applicant is in the process. It’s easy to lose track of who’s who and where they stand in the hiring pipeline.

The emergence of no-code tools has made database creation easier and more accessible. Imagine effortlessly building and managing databases without ever needing to write a single line of code. That’s the magic of no-code tools.

Why you need an internal applicant tracker

An internal applicant tracker is a system to manage and keep records of employees who apply for positions within the company.

An applicant tracker is a core part of the recruitment process—to upload candidate information and application documents into a central database, add scheduling and screening information to candidate files, and perpetual storage of current and former candidates to generate talent pools.

Baserow allows you to share your database with team members or collaborators, enabling them to access and work on the data. This helps HR departments or hiring managers keep track of all internal job applications, including details like the position applied for, the date of application, and the applicant’s current department or role. This streamlines the recruitment process by organizing and managing job applications for employers.

What we’ll do

In this tutorial, we will guide you through the process of building an applicant tracker using n8n and Baserow. With this solution, you can streamline your recruitment process by automating the capture and organization of applicant data.

We will use n8n to connect Baserow with third-party applications and automate the flow of data. The applicant data will be captured through a form, processed by n8n, and then stored in the Baserow database.

We’ll cover the following steps:

Prerequisites

To follow this tutorial, you’ll need the following:

  • A Baserow account
  • An n8n account or another automation tool
  • Basic familiarity with Baserow and n8n

Let’s dive in!

Build an automated applicant tracker in Baserow

1. Set up your Baserow workspace

Managing recruitment is easier with a centralized database. Baserow will serve as a centralized hub for inputting, organizing, and collaborating on all the important elements of the hiring process.

Log into your existing Baserow account or create a new account if you don’t have one already.

Once you log in, you can access the dashboard to add workspaces and databases. Let’s start by creating a new workspace. If you have an existing workspace, you can skip this step and proceed to add a database to the existing workspace.

To create a new workspace, simply click on the + Create workspace button. Then, click on Add workspace to get started.

If you are just starting with Baserow, find out more about how to create a workspace.

That’s it! we’ve successfully created a new workspace. Now we can start populating, managing, and organizing applicant data in Baserow.

2. Create a database from template

Once the workspace is set up, you can either create a database from scratch or choose one from our template library. Baserow provides several pre-designed templates for different purposes, such as project management, CRM, or inventory tracking.

In this tutorial, we’ll add a database from a template in the library.

To add a template that best suits our needs,

  1. In the workspace, click on the + Create new button to start creating a new database.
  2. Select the “From template” option.
  3. Input “Applicant Tracker” in the template search box.
  4. Click the Use this template button to add the template to the workspace.

If you have existing data that you want to populate your new database with, you can use Baserow’s import feature to upload data from CSV files or other sources.

Once your Baserow database is set up and customized to your liking, you can start using it to manage your data and streamline your workflow.

The Applicant Tracker template built on Baserow.

Use this template

3. Design the tables and fields

Templates in Baserow are a starting point. You can customize and extend them, add or remove tables, modify fields, and create relationships between tables according to your specific requirements.

The Applicant Tracker template is predefined with tables, fields, and views to capture the relevant information as part of the hiring process.

The template consists of tables, such as

  • Applicants: To store candidate information.
  • Positions: To keep track of job openings.
  • Interviewers: To track staff who interviewed specific applicants.
  • References: To track the different references the applicants used.

In the Applicants table, create distinct grid views for various stages of your hiring process, such as “All Applicants,” “Shortlisted,” “Rejected,” and more. Within each grid view, apply filters to display only the relevant applicants based on their current status, making it effortless to track progress.

We will now streamline the recruitment process to further enhance your candidate management based on your needs.

4. Create a form in Baserow to capture applicant data

Managing a large number of applications can be challenging. To streamline the process and reduce paperwork, we use an online application system. With this system, you can easily collect applicant details using a customized application form.

To collect applicants’ details,

  1. In the Applicants table, simply switch to the “Add new applicant” form view using the view switcher.

  2. By installing the template, the application form comes pre-populated with essential questions to gather candidate information. This includes contact details, interview questions, the option to upload CVs, cover letters, and more.

    Go through the application form and review and update the questions accordingly. Remove or add questions as needed to keep the form relevant. Use conditional logic to display questions based on previous answers.

  3. To customize the form appearance, you can choose a mode from the view bar at the top of the screen. With Form mode, respondents can preview all questions at once. All fields are visible, and they are stacked vertically for easy access. With Survey mode, respondents can preview one question at a time. Only one field is visible at a time, making it a more focused and guided experience.

  4. Make the application form accessible on your careers page and share it across your social media channels. This will encourage potential candidates to apply for job openings.

When an applicant submits a new application, a new row will be added to the table. This way, we can keep all applicant data organized and ready to review and analyze. We’ll put their answers from the form in the table. This helps you evaluate if they’re a good fit for the job.

The Form view in Baserow’s Applicant Tracker template

Forms can be prefilled via query parameters added to the public form URL to help the user fill in the form faster. To learn more about customizing form displays, read our documentation on how to work with Baserow forms.

Now we can create workflows that automate your business processes.

5. Add credentials on n8n to authenticate nodes

Next, we want to build custom workflows with automation. To do this, we can choose from various automation tools such as Zapier, Integromat, n8n, etc. However, for the purpose of this tutorial, we’ll use n8n.

With n8n, you can seamlessly connect multiple apps, set up conditional logic, and use a range of data processing functions.

Sign up for a new n8n account if you don’t have one already. There are various ways to set up n8n depending on how you intend to use it.

Before we integrate Baserow with n8n, we need to add credentials to authenticate the Baserow node. n8n credentials are the secret keys that apps and services provide, to authenticate you as a user and allow the seamless exchange of information between different apps and the n8n node. Learn how to create the credentials here.

Once you have your credentials, you’ll use them to authenticate the Baserow node within n8n.

6. Set up a webhook with n8n as a trigger

To trigger the workflow, we want to pull in data from our Baserow table with the n8n Webhook node. n8n Webhook node is a trigger node that serves as the starting point for an n8n workflow. It allows you to create webhooks that can be used to receive data from Baserow when an event occurs.

  1. Add the webhook node to your workflow. Search for “Webhook” and add the trigger node to a new workflow. This starts the workflow when a webhook is called:

    Add webhook

  2. Click on the webhook node to reveal the parameters section to configure the node. Within this modal, you can view the URLs for the webhook.

  3. Choose the POST HTTP method. POST requests are typically used to send data to a resource for a create/update operation.

    POST request

  4. Copy the test URL.

    n8n recommends using a test webhook URL when creating or testing a workflow. This ensures that the incoming data can be viewed in the Editor UI, which is useful for debugging.

Next, we will put the test URL to use by making a POST request in Baserow.

We will create a webhook to call the n8n pipeline that generates the update. This will connect your database account and the table where you want to store applicant data.

7. Create a webhook in Baserow for form submission

Now that we have the webhook URL, we need to set up the trigger event to track new form submissions

Back in Baserow, we will create a webhook that will be triggered when a row is created. Webhooks can inform 3rd party systems when rows in Baserow have been created, updated, or deleted.

To receive requests,

  1. Create a new webhook in the Applicant table.
  2. Select the method as POST.
  3. Paste the webhook URL copied from n8n.
  4. Select “Send me everything” to trigger the webhook when rows are created, updated, or deleted, or “Let me select individual events” to trigger the webhook when:
    • Rows are created: Select this individual event to trigger when applicants submit their information through the form.
    • Rows are updated: Select this individual event to track when the Stage field is updated as applicants move through the hiring process (e.g., “Decision needed,” “Interviewing,” “Rejected,” “Hired,” etc.).
    • Rows are deleted: Select this individual event to trigger when a row is deleted.

Working with webhooks in Baserow to create an automated applicant tracker system

8. Test and activate

Now that we have configured the trigger that will initiate the automation, we will test the trigger to ensure it’s working correctly.

  1. Back in n8n, click the Listen for test event button in the webhook modal.

  2. While listening for the test event ****on n8n, back in Baserow, click the Trigger test webhook button on the webhook modal.

    Trigger test webhook button

This should generate a 200 OK response.

The test webhook is only registered in the time between executing a workflow via the UI and until the first call gets made (when it displays “waiting for Webhook call”).

Next, we can add more steps to automate additional actions, like sending Slack notifications to the hiring team when a new application is received or sending emails to applicants.

9. Send reminder emails

Scheduling automatic reminders makes it easier for employees to meet all the important deadlines.

To keep track of interview schedules and important dates, consider creating a calendar view. This view will allow you to visualize upcoming interview dates, ensuring you never miss a crucial appointment.

  1. Add a Slack action to automatically send notifications as applicants progress through the hiring process.
  2. Add an email action to schedule interviews with applicants.

This ensures that all the requirements and objectives that the team are organized and informed.

Send reminder emails to schedule interview

Regularly check your Baserow database to ensure data is being processed as expected and make any necessary adjustments or updates if your requirements change.

10. Execute and activate the workflow for production

To activate the workflow, follow these steps:

  1. Trigger the workflow manually by going to the canvas and clicking the Execute Workflow button on the canvas. This will initiate the test. After executing the workflow, you will receive a response.

    Keep in mind that the test webhook URL only works for one call after clicking Execute Workflow button. After the test webhook gets called for the first time, it will display the data in the Editor UI for your review and then become deactivated.

  2. Once you’ve successfully tested the workflow, the next step is to save and activate it. Saving the workflow preserves your configurations while activating ensures that the workflow will run automatically whenever the trigger condition is met. To do this, save the workflow first, and then toggle the Active located at the top of the canvas. After activating the workflow, it will run as defined, responding automatically each time the trigger condition is met.

  3. To run the workflow without manually clicking the execute button, use the production webhook URL. However, make sure that you have saved and activated the workflow when working with the production webhook.

Your workflow will then be triggered every time a POST request is sent to the Production webhook URL.

Keep in mind that when using the Production webhook, data flowing through it won’t be visible in the Editor UI. These executions won’t appear immediately in the editor, but you can find them in the execution list if you choose to save executions.

By following these steps, you can efficiently manage applicant data as it flows automatically into your database whenever applicants submit their information through the form.

Now, whenever applicants submit their information through the form, the data will automatically flow into your database, allowing you to track and manage applicants more efficiently.

Summary

To be productive, it is important to track an applicant’s status more effectively. Following this tutorial, you have built an automated applicant tracker with n8n and Baserow that allows you to capture and store applicant data.

This workflow can be adapted to any use case. Thanks to no-code tools, you can now create and manage databases without writing a single line of code. Imagine the simplicity of building a database system to streamline your recruitment process.

If you run into an issue while following this tutorial, feel free to reach out for help in the Baserow community.