Process setup
What is an ATS?
The posting went live, two weeks passed, and forty applications now sit in three different places: a shared inbox, a spreadsheet somebody set up, and a folder nobody opens. An ATS exists to pull that mess together. It ties an application to a single record, keeps the stage that record is at, and stores every change with the name of the person who made it. This guide covers what the term means, what an ATS actually does, and where the AI layer laid on top of it stops.
9 keys, 5 stages
Application status comes from a fixed dictionary in code; the panel shows five stages on a single line
Every transition logged
A status change requires a user identity; the changed field, the old value, the new value and the timestamp are written together
12/12
The year arithmetic behind a required criterion is never asked of the model, it runs in code: correct on 12 of 12 difficult edge cases, with no false elimination
An ATS, short for applicant tracking system, is software for tracking applications. Everyone who applies to a posting lands on one screen, the stage of each candidate is read off a status label, and every status change is recorded together with the person who made it. In the AI assisted ones the system ranks candidates and shows the evidence behind the ranking. The call that advances or rejects a candidate is made by a person.
What ATS means and the problem it solves
ATS is short for applicant tracking system. Turkish uses two names for it side by side, basvuru takip sistemi and aday takip sistemi, and both describe the same thing. Everyone who applies to a posting gathers in one place, the stage each candidate is at is visible, and whoever changed that stage stays on the record.
The problem it solves is not piling up files, it is not losing the trail of a decision. In a setup without an ATS, applications land in a shared inbox, some of them get copied into a spreadsheet, and the rest stay in a folder. Three things break at once: two people evaluate the same candidate without knowing it, the reason a candidate was rejected turns into something nobody remembers two weeks later, and the question "how many candidates are at the interview stage" cannot be answered without counting by hand.
An ATS solves all three with a single change: an application stops being a file and becomes a record. That record has a status, a history and an owner. Capabilities such as CV analysis, interview scheduling and document collection attach on top of the record; they never replace it.
- An ATS is not an archive, it is a record of decisions. What it really keeps is not the CV, it is who changed which stage and when.
- If status labels are used loosely, an ATS measures how long work waited in the panel rather than the process itself. Label discipline belongs to the team, not to the software.
- The AI layer is not a mandatory part of an ATS. In GoTeam it is tied to a separate company setting: with that setting off, application tracking works and scoring never runs at all.

What an ATS actually does
The core comes down to four jobs: recording the application, keeping the stage the candidate is at, writing down who did what, and counting the numbers in the process. These four jobs are what make a piece of software an ATS; everything else is a layer on top.
The table below ties those four jobs to their real counterpart in the GoTeam panel. A row with no counterpart was left out: the easiest way to break a definition page is an invented example.
| Job | Counterpart in the panel | What it means |
|---|---|---|
| Recording the application | The company's own career page form, manual entry from the panel, Google Drive import on the Enterprise plan | The candidate uploads their CV as a PDF and the record lands straight in the panel. No inbox in between. |
| Keeping the stage | The Pending, Reviewing, Interview, Accepted, Rejected line | Status comes from a fixed dictionary in code. No screen invents its own label or colour. |
| Writing down who did what | The audit log on the application detail | The changed field, the old value, the new value, the user and the time are kept together. |
| Counting | The candidate pool summary and the Application Funnel card on the dashboard | The funnel counts the whole pool and ignores the date range picker. The observability dashboard is open from the Mini plan onwards. |

One route, three panes
The applications screen runs on a single route: the filter strip and the list on the left, the detail of the selected candidate in the middle, their document on the right. Picking a candidate does not change the route, the selection is written to a parameter in the address bar. In practice that means the list does not reload from scratch when you set up a filter and click a candidate, the same candidate is open when you refresh the page, and you can send that address to a colleague.
Internship applications use the same shell but sit in a separate tab with three extra filters: university, insurance and internship type. That tab does not come ready on every setup, unlike job applications it has to be switched on.
The status line and the label trap
Application status carries nine keys in code and shows five stages in the panel. Two of the nine keys belong to the same stage, which is why saying "there are five statuses" is wrong and "nine keys, five stages" is right. Two more statuses belong to life after the hire, and those never enter the funnel.
One warning, because this is where demos go sideways most often: the same stage is not worded identically on every surface. The stage badged Interviewed in the list reads Interview on the detail status button and in the audit log. When you walk someone through a screen, use the label that screen carries.
Interview exists as an application status on every plan. Scheduling an interview with Google Meet is a separate capability and is open on the Professional and Enterprise plans. Putting the two in one sentence creates an expectation the product does not meet.
The gate on rolling back, and two people at once
Rolling an application back from Accepted or Hired does not work directly while that application has open document or information requests. The system counts how many are open and warns you. Forcing past it requires a written justification, and the justification lands in the audit log as its own field.
If two people update the same application at the same time, the second one does not silently overwrite the first. The update has to match the last change stamp on the record; if it does not, the request comes back and the user is asked to refresh the page. That is exactly what gets lost in a shared spreadsheet.
Sending a status email to the candidate is a separate decision, and it is not available at every stage. On the candidate side a template exists only for Accepted, Rejected and Reviewing. The email is skipped on Interview and Hired transitions.
Where the AI layer starts and where it stops
Everybody looking at an ATS today also sees an AI layer next to it. What that layer does changes from vendor to vendor, and the difference is not in the marketing copy but in the architecture: does the model produce the score, or does the model gather evidence while code does the arithmetic? The answer also decides whether the same CV gets the same score two weeks from now.
In GoTeam the order runs like this. The evaluation rubric is produced once per posting, before a single candidate is seen, and then stored; everyone who applies to that posting is measured against the same one. Versions have a draft, an approved and an archived state, and only an approved version enters scoring.
For every rubric item the model does exactly one thing: it asks whether the item is evidenced in this CV and leaves a verbatim quote from the CV next to its answer. The arithmetic is done in code. The quote is validated in code too: the exact set the model may quote from is built out of the CV text, and a quote that does not sit in that set is dropped.
Unlike the ATS core, this layer sits behind a flag. While AI analysis is off in company settings, scoring never runs, natural language pool search does not appear in the menu, and application tracking carries on exactly as before.

How an item with no evidence is counted
If no evidence for a rubric item is found in the CV, that item is not counted as half a point. Its weight is taken out of the denominator and the item is flagged for human review. The rule fits in one sentence: the absence of evidence is a gap in the measurement, not in the candidate.
The reverse is closed off. The denominator of the score is a constant of the position; a criterion the candidate was not evaluated on keeps its weight and earns no points from it. The old behaviour dropped a criterion the model failed on out of the denominator and pushed the score up: on a four criterion rubric, a candidate with coverage of 1, 1, 0, 0 who should have scored 50 was read as 67 once the weak criterion left the denominator.
The required criterion gate has three values
The required criterion check is never asked of the model. Dates and technologies are pulled out of the CV, overlapping ranges are merged, and the year arithmetic runs in code. The gate returns three values: passed, closed, unknown. "Unknown" is never treated as "closed", because the cost of a false elimination was accepted as higher than the cost of keeping an unnecessary candidate on the list.
That choice came out of measurement. Across four policies, the binary judgement asked of the model was right in 7 of 8 cases and produced 1 false elimination, while the deterministic gate produced 8 correct calls and 0 false eliminations.
Edge cases were measured separately: 12 of 12 difficult cases correct, zero false eliminations. The same measurement also caught a policy mistake. Counting part time experience at half weight was removed, because it turned reduced hours into a discrimination vector.
A person can override the gate with a written reason. Who overrode it, when and on what grounds is stored, and it is not deleted when the score is recomputed: refreshing a score does not erase a human decision.
People decide, the system shows
AI never changes the status of an application on its own. It produces suggestions, shows the decision band and lists the evidence items. The operation that changes a status always runs with a user identity and is written to the audit log. Even a bulk status change asks for confirmation.
The system does not learn from past hiring outcomes either. Who was invited or hired never enters scoring. The reason is not a preference but a known failure: the hiring tool Amazon shut down in 2018 reproduced its own past decisions precisely because it learned from the outcome label.
Every score record carries its own governance block: rubric and scoring versions, model name, temperature, the three valued call of the gate, and the supporting ranges per criterion. A re-analysis refreshes the old score without deleting its previous state. The history row is append only, and the reason for a change is derived from a hash comparison rather than from what the user says it was.
Questions to ask when you are choosing an ATS
This section is not about the product, it hands you the questions to ask in a demo. Three outside findings explain why these are the questions. Work by University of Washington researchers (Wilson and Caliskan, AIES 2024) found across more than 550 real CVs that language models preferred names associated with white candidates 85 percent of the time. Stripping the name off the CV does not fix it either, because the model can infer identity from education history, city and word choice.
The second one is legal. Mobley v. Workday received conditional certification on 16 May 2025 to proceed as a nationwide collective action under the ADEA, opt in opened in January 2026, and the scale is described as "millions of applicants" (reported by maynardnexsen.com).
The third is the industry's own choice. Vendors such as Greenhouse do score candidates, but they leave the scoring to people and fix the criteria list before anyone looks at the candidates (reported by jobscan.co and atsverification.com). Handing a holistic preference judgement to a model is risky; asking narrow factual questions is not.
| Question | Why it matters |
|---|---|
| Does the model produce the score, or does the model gather evidence while code does the arithmetic? | The name bias that has been measured shows up in holistic preference judgements. An answer to a narrow factual question backed by a verbatim quote is a different thing. |
| Is the criteria list fixed before anyone looks at the candidates? | Criteria written after the candidates are seen turn into a description of the preferred candidate and stop being a rubric. |
| How is an item with no evidence counted? | A system that counts it as half a point punishes the candidate who wrote their experience briefly twice over. |
| Does the system learn from past hiring outcomes? | A model that learns from the outcome label reproduces past decisions. The tool Amazon shut down in 2018 is the known example. |
| Can you show a year from now why a candidate was rejected? | If the version, the model and the gate reasoning under the score are not kept, the answer is no. The court files turn on this question. |

What people expect and will not find
The most useful part of a definition page is often the list of what is missing. GoTeam has no video interviews, no skills tests, no candidate sourcing and no social media screening. There is no LinkedIn, Indeed, HR information system or Slack integration either. Posting views are not counted, the data model carries no such counter; the top measured stage of the funnel is the application that arrives.
Candidate uploads accept PDF only, up to 5 MB. DOCX is valid only in the Google Drive import on the Enterprise plan, never on the candidate side. There is no automatic deletion when a retention period ends either: you do the deleting, the record drops into the bin and can be restored from there.
Frequently asked questions
An ATS runs the road up to the hiring decision: the posting, the application, the status line, the audit log. An HRIS keeps what comes after the hire, the personnel and employment records. GoTeam carries the post hire side as well, employee records, employment periods and document collection. But there is no HRIS integration, no channel that hands data to an outside HR system.
A spreadsheet cannot do three things. When two people update one record at the same time, the second silently overwrites the first; in an ATS the update has to match the last change stamp and comes back if it does not. A spreadsheet does not keep, field by field, who changed which value and when. And no application form on the candidate side feeds a spreadsheet, so you still open every record by hand.
An application from the career page form lands straight in the panel, with no inbox in between. The panel offers two more routes: recording a candidate by hand, and bulk importing from a Google Drive folder on the Enterprise plan. The product has no channel that collects applications from email attachments, so a CV that lands in your inbox is one you move to the panel yourself.
The candidate gets a separate transparency surface where they see what was read out of their CV: experience titles, date ranges, technologies. The score, the decision band, the required criterion result and the ranking are not on that screen, and the service behind it never reads that table. A candidate can say "my information is wrong"; that notice does not eliminate them, does not delete the analysis, and flags the record for human review.
The core is tied to none of them: the application list, the status line, the candidate pool summary, the audit log and the career page work on every plan. Seven capabilities sit behind a plan gate: the AI hiring advisor, posting text generation, interview scheduling, the document request chain, the observability dashboard, custom roles and Drive import. Independently of all that, AI analysis is also tied to a company setting; while the setting is off, being included in the plan is not enough.
The ranking comes from stored scores, and no new AI request is made the moment the list is opened. A candidate without a score is not counted as zero and pushed to the bottom, they are left out of the calculation; the label on the pool summary average also says what it is an average of. Decision bands come from one central mapping, and no screen derives its own colour from the raw score. The ranking is a suggestion, not the operation that changes a stage.
Related guides
Related features
See it on your own applications
Let us walk through the status line, the audit log and the evidence cards on one of your own postings. We open the account for you.
Contact Us





