# Goodfit Docs
Welcome to the Goodfit documentation. Track platform updates, new features, and improvements.
# May Week 3
The voice interview's opening and closing lines can now address each candidate by name.
* In the **Ice breaker** and **Closing remarks** fields, type **`@`** to insert a chip: **Candidate's name**, **Company name**, or **Job title**.
* At call time the bot speaks the finished line — *"Hello Alice, thanks for your time interviewing for the Senior Engineer role at Acme."*
Choosing coding questions is now a full-screen, browse-and-filter experience. The prebuilt coding bank is now **430 coding** problems across 10 languages and **95 SQL** problems.
* Topics span data structures, algorithms, backend logic, and real SQL analytics (revenue deltas, org hierarchy, quartile buckets).
* **Filter rail** down the left — Type, Difficulty, and Topics, each with a live count.
* Search, sort (default / title / easy→hard / shortest).
* Click a question to **preview it** in a side pane before adding.
* **Multi-select** with a review strip at the bottom — see everything queued, remove any, then "Add N questions".
* **Curated bundles** — five ready-made starter packs (Coding Fundamentals, Quick 30-min Screen, Backend Engineer Screen, Data / SQL Analyst, Algorithms Deep-Dive) as one-click cards.
You can now pull **single questions** from a library of **\~10k prebuilt skill questions** — not just adopt a whole assessment.
* Browse and filter by **family, skill, difficulty and type**, with full-text search.
* **Preview** each question — including its image or audio media — with the options and the rationale.
* Pick questions one at a time and mix them with your own, or add a **curated pack** (organised into 16 family categories → packs → questions).
Questions picked from the question bank are locked: you can reorder, remove or reweight them, but the content is fixed.
A skill assessment can now serve **a random handful of its questions to each candidate** — so the same questions don't leak between candidates.
* Turn on **Random subset** in the assessment settings and set how many questions to show.
Language-proficiency tests are no longer English-only, and you can read every question before you assign one.
* Available languages now include:
* **English**
* **Hindi** (हिंदी)
* **Telugu** (తెలుగు)
* **Tamil** (தமிழ்)
* **Gujarati** (ગુજરાતી)
* **Malayalam** (മലയാളം)
* **Marathi** (मराठी)
* **Kannada** (ಕನ್ನಡ)
* **Odia** (ଓଡ଼ିଆ)
* Hit **View questions** on any language to open a full read-only preview — reading passages, audio clips, every option, and the answer key — exactly what the candidate will see.
When you write your own voice question, you no longer have to hand-write the scoring guide.
* A **Generate with AI** button now sits next to each ideal-response slot — both the primary question and the follow-up.
Found good people in your talent pool? Drop a batch straight onto a job — already scored.
* Select candidates, click **Add as Prospect**, pick one target job.
* Each candidate is **scored against that job's description** and added as a prospect with the score visible.
* A summary toast tells you what happened — *"3 added, 1 already on this job, 1 skipped (no resume)"*.
Up to **10 candidates per batch**. Candidates without a resume are skipped.
{/*
Locked-down Microsoft 365 tenant? You can now send from your mailbox without app passwords or legacy SMTP.
- In **Email Settings**, click **Connect Microsoft 365**.
- Approve once on Microsoft's standard consent screen, then pick the mailbox to send from (e.g. `careers@yourcompany.com`).
- No app passwords, no legacy SMTP AUTH, no MFA exceptions — email sends through Microsoft Graph.
This is an additional option — existing SMTP setups are untouched.
Don't want to keep refreshing the pipeline? Let the job email you the moment a candidate completes.
- On the job's edit page, **Settings → Email on assessment completion** (off by default).
- When on, the job's creator gets one branded email per completed assessment or interview — **generic, voice, psychometric, coding, and CEFR**.
- The email carries the result (the CEFR level or psychometric archetype where relevant) and a **View full report** button.
Re-evaluating a report later does **not** re-send the email. It's sent via your organisation's mail configuration.
*/}
Candidate email is now durable and observable — and you find out fast when your mail is misconfigured.
* If your custom SMTP is broken, **Email Settings shows a red "Delivery failing" banner** with the exact provider error and **provider-specific fixes** (including Microsoft 365).
* Application cards and the activity timeline now show **per-message delivery status** alongside stage moves.
Before, a misconfigured mail server could silently drop candidate emails and you'd never know. Now it's surfaced in-product, with the steps to fix it.
# May Week 4
Every job now has its own intake email address — candidates apply just by emailing their resume.
* Turn the address on for a job and share it on LinkedIn, X, WhatsApp, or anywhere else.
* A candidate emails their CV from anywhere; we **parse the resume**, **score it against the JD**, and create a prospect card with a **📧 Email Inbound** badge.
* Click **View email** on the application to read the original message and download every attachment.
Resumes over 10 MB still create a prospect — we just skip the auto-parse.
Until now you had four built-in emails (invitation, assessment, rejection, hired) and nothing else. You can now write your own — interview confirmations, take-home briefs, offer letters, polite nudges, reference-check requests — and send them straight from a job's pipeline.
* Settings → Email Templates → **+ New template**. Author a subject and body with click-to-insert variables for candidate name, job title, company, and the sender.
* Every template renders inside **your branded layout** — your logo on top, your brand color on every button — so what you preview in-product is exactly what the candidate sees in their inbox.
* **Send from the kanban**: select candidates on a job's board, open the Send email dialog, pick a template, hit send. One email, branded, audit-logged, done — no copy-paste from Gmail.
* **Attach real files** to any template. Flip **Requires attachment** on (e.g. "Offer Letter" or "Take-home brief"), and the kanban will only let you send it to one candidate at a time up to 3 files, 3 MB each: PDF, DOCX, PNG, JPG.
* The candidate gets a branded email with a real paperclip. The application's activity timeline records the template name and the files that went out — so "what did we send Bob three months ago?" stops being a mystery.
Creating and editing custom templates is restricted to owners and admins. Recruiters can still **send** them from a job's pipeline.
Don't want to keep refreshing the pipeline? Let the job email you the moment a candidate completes.
* On the job edit page, flip **Settings → Email on assessment completion** (off by default).
* When on, **the person who created the job** gets an email per completed attempts. **View full report** button straight to the application.
Turn on **Resume-aware AI Interviewer** on a job and the voice bot reads each candidate's resume before the call — then uses it during the interview.
* It anchors on what's on the CV ("Your resume shows \~6y with React — how do you approach state management?")
Reviewing a proctored attempt used to mean flipping between two separate recordings — one of the candidate, one of what they were doing — and trying to line up the timing by eye. Now they play together.
* When a candidate pauses for forty seconds, you can see at a glance whether they were thinking, looking away, or no longer at their desk — without ever leaving the page.
* The candidate's video sits as a small circle in the corner of their work. Hover it to enlarge; click it to open in a new tab.
Coding, skill-based, and psychometric attempts.
Evaluations on the application's **Evaluation** tab used to rate against the job-level skill list — which often drifted from what the voice interview actually assessed. Now the scorecard mirrors the interview.
* The skills you see on the scorecard are pulled straight from your voice interview skills for that stage. If the job has more than one voice round, we combine them and drop duplicates.
* When there's no voice round, the scorecard falls back to the job's skill list and lets you add a custom skill row.
* **Your teammates' scores are hidden by default** — no more anchoring on "2 Yes, 1 No" before you've written your own. Click **View team evaluations** when you're ready, **Hide team evaluations** to collapse them again.
* Forget to rate a skill or pick a recommendation? You get a clear message saying what's missing, instead of a silently disabled button.
The Talent Pool gets a new **Filters** button next to the search / job / status / sort row, with three deeper ways to narrow down candidates.
* **When they applied** — pick a date range with the two-month calendar.
* **Resume mentions** — type a keyword (e.g. `react`, `adobe`, `gst`). We search the parsed contents of every resume. Each matching candidate shows the surrounding snippet right under their email with the keyword bolded — so you can tell **real Java** from **JavaScript-only** at a glance.
* **Assessments completed** — pick from a list of **your organisation's actual assessments by name** (not generic types). Selecting one means "this candidate has finished and been evaluated on this specific assessment."
* Filters live in the page address — bookmark a useful slice, share it with a teammate, reload the page and it's still there.
The Download Applications button on a job's kanban now respects your active filters. The CSV contains exactly what's on screen — not the whole job.
* No filters active? You'll get the full applications list, as before.
* Filters active? Hover the download button and it tells you exactly how many applications are about to leave with you — **`Download 12 filtered applications`** — and the CSV mirrors that.
* If your filters narrow the board to zero candidates, the button stays disabled — never a silent full-job export when you thought you were narrowing.
* Hover the Download CSV button on Overview, Pipeline Health, Sourcing Analytics, or Team Activity and you'll now see **`Download filtered data`** — a small, clear confirmation before you click.
* Narrow to "Q1 2026, recruiter X" and the CSV is that slice, every time.
Creating or editing a job used to throw fourteen open cards at you in one wall — overwhelming, hard to scan, and easy to lose your place in. We've cleaned that up.
* The most important sections are open when you arrive — job status, visibility, basics, job description — and everything else sits one click away, in order, ready when you need it.
* No more scrolling through settings you don't care about to reach the one you do.
# June Week 1
Last month the talent pool let you narrow on three things. Now it answers the questions you actually have — "who scored at least B2 on our English test, passed the JavaScript assessment, has React on their resume, and applied in the last month" — as one search.
* A new **Filters** dialog with sections down the side — Jobs, Application, Identity, Skills, Experience, Education, Location, Assessments, and Quality — each showing how many filters you've set so you never lose your place.
* Filter on **every assessment you run, by name**: set a score range (`70–100%`), or for language tests a minimum level (English **at least B2**). The list grows with your assessment library — language tests included, which the old filter couldn't even show.
* Slice by what's genuinely on a resume — a specific skill, the candidate's current employer, a past role, school, degree, city, country, years of experience — matched against the real details, not a stray word buried in a job description.
* Add quality and integrity signals: resume score, AI-writing percentage, and proctoring flags. Or paste a list of emails to pull up exactly those people.
* Stack as many as you like and we get the logic right — "B2 English **and** 70% coding" means **one candidate who did both on the same application**, never two unrelated results stitched together.
When you combine filters, a candidate shows up only when one of their applications clears every condition at once — so passing English on one job and a coding test on another doesn't count as a match.
Not sure which filter says what you mean? Type it as a sentence and let Goodfit set the filters for you.
* Click the **✨ AI** button next to Filters and type something like `designers from Mumbai fluent in Marathi`.
* It proposes the matching filters — `Role contains "Designer"`, `City contains "Mumbai"`, `Skill contains "Marathi"` — and you tick the ones that are right before applying.
* It never guesses silently: anything it can't translate lands in a **Couldn't handle** list with a plain reason, so your results always mean exactly what you asked.
* Confident matches come pre-ticked; the iffy ones — a state typed where we only have a city field, say — come unticked, so you stay in control.
Your public careers page used to come in exactly one layout. Now pick from seven branded templates and see your page redraw the moment you choose.
* A new **Design** panel in **Settings → Careers** with seven templates — Classic, Minimal, Bold, Editorial, Warm, Dark Matters, and Radiant Play — each one a live little preview of your own page.
* A full preview sits right beside your edits and updates on every keystroke — no more saving, publishing, and opening a new tab just to see a change.
* Flip between **Desktop** and **Mobile** to see exactly what candidates get on a phone.
* Light or dark, sharper or rounder corners, tighter or roomier spacing — every option is pre-designed, so the page always looks intentional. Your brand color flows in as the accent automatically — no color-picking, no fonts to upload, nothing to get wrong.
* Already published a careers page? It keeps its current look until you pick a template.
The in-app preview is instant. The public page is cached, so a saved change can take a few minutes to show up at the live address.
Built a job's hiring stages and need a manager's sign-off? Send them a link that walks every screen a candidate will see — no screenshare, no taking the assessments themselves.
* A new **Preview as candidate** button in the pipeline editor — and **Preview before publishing** on the publish step — opens a read-only walkthrough.
* Step through the whole flow in order: the application form, each assessment, the voice interview, the coding problems — exactly as a candidate would, with nothing submittable.
* Every stage carries a **Recruiter settings** strip — pass score, what happens automatically, whether the stage is mandatory — so the manager can vet the questions and the thresholds in one place.
* Hit **Share** to copy a link; teammates land on the saved pipeline, making for a clean Slack handoff.
* Reorder or tweak stages without saving and the preview reflects your unsaved draft.
The share link works for teammates in your organisation, not outside reviewers — approval still happens wherever your team already does it.
# June Week 2
The strongest resume matches in your workspace now appear right where you work — ready to invite in one move.
* Flip on **✨ Show AI candidate suggestions** and your closest resume matches appear under **Prospects**, each with a fit score.
* **Drag one onto Invitations** or hit **Invite Candidate** — send the interview invite.
Mentions, completions, and invites used to live only in your inbox. Now they also live as in-app notifications.
* Grouped **Today / This Week / Earlier**.
* It pings you when a teammate **@mentions you**, a candidate **finishes their pipeline**, or you're **invited to an organization**.
* A gentle pop-up for the moments worth interrupting you; a silent badge for the rest.
Every event still emails you as before — the bell just mirrors it in-app, so you can glance instead of dig.
Two upgrades on a candidate's feedback panel: pull a colleague in, and see where your interviewers landed without doing the math.
* Type **@** in a comment to tag a teammate.
* A new **Team verdict** header turns every scorecard into one read: a lean like **Leaning Yes**, a bar with a segment per interviewer, and a **Split** badge when they disagree.
Last release the talent pool learned to read plain English. Now a single job's applicants board does too.
* Hit **✨ AI** and type something like `proficient in Malayalam, applied within the last week`.
* It builds the matching filters; you tick the right ones and apply.
* Can't express something? It tells you in plain words — never a silent wrong guess.
Add **subjective questions** for skill based assessments. Now each one carries its own grading method, so you decide what "correct" means.
* Pick how a **Subjective** question scores: **keyword**, **exact**, or **pattern** match, **AI grading** against an ideal answer, **manual review**, or **collect-only**.
* The match methods score instantly, no AI; **manual review** lets you read and score it yourself on the report.
A candidate runs, fails, edits, submits again. Now you can see what they changed to finally pass.
* A **Code / Diff** toggle diffs any submission against the **Previous**, **First**, or **Accepted** one — added and removed lines called out.
* Unchanged code collapses away, so the change is front and centre.
New to Goodfit? A small checklist in the sidebar shows the first four steps — then bows out.
* **Create a job → invite a candidate → invite a teammate → hire** — each step links to where it happens.
* It ticks itself off as you work; no wizard, no tour.
* Dismiss it whenever, and it vanishes on its own once all four are done.
We’ve launched Goodfit MCP — now you can connect Goodfit directly using the Goodfit MCP itself, or set it up within Claude.
* Generate a key and copy a ready-to-run command for **Claude Code** or a config block for **Claude Desktop**.
* Paste it, and Claude can read and act on your jobs, applications, and candidates.
# March Week 3
End-to-end referral pipeline to streamline candidate sourcing through your team.
* Whitelist specific company domains to allow internal referrals
* Enable referrals at the job level
* Employees can share and refer candidates through the Goodfit job board
* Referred candidates automatically land in the **Invitation** stage on the Kanban board
* Referral invitation emails are sent with an application link
* Filter and track referred candidates directly on the Kanban board
Helps spot if someone might not be honestly answering voice interview questions by checking if their spoken words match their lip movements in video recordings.
After you finish a voice interview, the tool reviews the recording, checks when the candidate is speaking, and makes sure their lips and voice match up.
* Flags moments where something seems off between lips and voice
* Shows if the candidate's video and audio are in sync for different parts of the interview
* Gives a simple result: Genuine, Borderline, or Suspicious, so you know if you need to look closer
{/* */}
* Bulk download interview reports directly from the Kanban board
* Reports are delivered via email as a ZIP of PDFs — no waiting on the UI
Structured evaluation system for hiring teams.
* Rate candidates on a scale from **Strong No → Strong Yes**
* Evaluate against job-specific skills
* Add notes per skill
* Add a final overall note for the candidate
* Embed jobs directly on external websites
* Job distribution via Google Jobs (*listings may take 2–3 days to appear after publishing*)
* Choose distribution targets per job: company careers page, Goodfit careers page, Google Jobs
AI now generates **ideal responses (scored 1–10)** during question creation for both primary and follow-up questions, giving evaluators a reference to compare against.
Microsoft Outlook authentication is now supported alongside existing providers.
# April Week 4
Recruiters can now pick the voice (and accent) the AI voice interviewer uses, per interview language — giving teams finer control over how interviews sound for different candidate cohorts.
* **English** — 12 voice options across US / UK / India / AU
* **Indic languages** — 6 voice options per language
Jobs can now carry structured compensation ranges at create or edit time.
* Salary range with minimum and maximum values
* Equity range with minimum and maximum values
* Improves listing quality when **Google Jobs** distribution is enabled
Application and pre-screening are now a single form flow. Candidates can submit the form even on a private job — including when they haven't been invited — as long as a form is attached.
**Form outcome behavior hierarchy**
B{Knockout question?}
B -- Fails --> P[Poor Fits]
B -- Passes / none --> C{Auto Proceed?}
C -- Disabled --> D[Prospects]
C -- Enabled --> V{Job visibility}
V -- Public --> F[Continue to next stage]
V -- Private --> I{Invited?}
I -- Yes --> F
I -- No --> D
D -.->|Auto Advance click| F
`}
/>
When a knockout question exists, the form is treated as **Auto-Reject**. A candidate who fails the knockout lands in **Poor Fits** regardless of the Auto Proceed setting.
If the candidate isn't invited, the *Apply* button is disabled and they see **"Invitation Required"**.
**Auto-Advance from Prospects**
Prospects who completed the application form (passed or held for review, but not failed) now show an **Auto Advance** button on their Kanban card. One click skips the invitation stage and moves the candidate straight into the first assessment — assessment invites (email + WhatsApp if enabled) are sent automatically.
Recruiters who haven't completed onboarding now see a lightweight onboarding screen. The step is **optional** and can be skipped at any time.
Collects:
* Name
* Phone number
* Designation
* Team size
* Goals
Recruiters can now **revoke** a candidate from the *Prospects* or *Invitation* stage directly on the Kanban board.
* For **private jobs**, a revoked candidate can no longer start the interview.
* Revoking is a board-level action — it does **not** recall or delete any email or WhatsApp invitation already sent to the candidate.
Email and WhatsApp invitations already sent stay in the candidate's inbox. Send a follow-up if the revocation needs to be communicated.
Recruiters can filter applications on the Kanban board using structured resume-evaluation fields:
* Worked At
* Current Company
* Past Role
* Studied At
* Degree
* Field of Study
* Skill
* Certification
* Language
* Country
* City
* Years of Experience
* Avg Years / Company
* Frequent Job Hopper
# May Week 1
Pay-as-you-go billing now powers every new company on GoodFit.
* Every organization created **on or after Saturday, 25 April 2026** is on metered billing
* **20 free credits** to start with — no card required
* **One credit per assessment** (coding, voice, phone, psychometric, skills)
* Top-ups available at **₹100 + GST per credit**, minimum **100 credits per purchase**
Open **Settings → Billing** to see your remaining credits, recent usage, and to top up.
**What happens when you run out?**
Once all your credits are consumed, the candidate experience remains unaffected — anyone already invited can continue normally. The only thing that stops is your ability to invite new candidates or view the candidate pool until you top up again.
See exactly where candidates drop off in your hiring funnel.
* **Pipeline Health** view under **Insights**
* Waterfall chart showing how many candidates moved from one stage to the next
* Final conversion to **Hired** or **Rejected** at a glance
* Spot the stage that's leaking the most candidates
Invitations now have a shelf life.
* **Default expiry: 3 months** from the day the invitation is sent
* Configurable per job — **minimum 1 hour, maximum 1 year**
* Once a candidate **starts** the interview, the expiry no longer applies — they can finish at their own pace
* Invitation emails now show the deadline ("Please respond by DD MMM YYYY")
* Expired invitations show a red **Expired** pill on the Kanban tile
* Re-inviting a candidate resets the clock.
Expiry only blocks candidates who **haven't started** yet. Candidates already in the middle of an interview are never locked out by expiry.
Dragging a candidate back into Invitations or hitting re-invite gives them a **fresh 3-month** window (or whatever your job's default is).
The original invitation email stays in the candidate's inbox after expiry. They can still click it — they'll just see an "Invitation Expired" screen instead of being able to start.
The expiry date for an invitation is determined and set the moment you send it. If you later change the job's default expiry window, it will not affect any invitations that have already been sent—those will always expire on their original deadline. Only new invitations sent after the change will use the updated expiry setting.
AI Interview is now split into two clear products at every step.
* **AI Web Interview** — candidate joins from a browser link
* **AI Phone Interview** — our bot calls the candidate directly on their phone
**Phone interview rules**
* A phone-interview job can **only** have phone-interview stages — no other stages can be added before or after
* **No application form** can be attached to a phone-interview job
* For **public** jobs, candidates pick the date and time they want to be called — right on the job page
{/*
Run structured exit interviews for departing **employees** — written form first, voice call optional.
**How it works**
1. **Create a template.** Add the questions in two parts:
- **Form questions** — the written part the employee fills out
- **Voice interview questions** — what the AI bot will ask on the phone call (if the employee agrees to one)
2. **Invite employees** to the template. They receive a **WhatsApp message** with a link to either take the interview or **mark themselves as not interested**.
3. **Form first.** Clicking the link opens a web form. The employee answers and submits.
4. **Voice call (optional).** After submitting the form, the employee chooses whether to schedule a follow-up phone call. If they say yes, they pick a date and time that suits them. At that time, our AI bot calls them and runs the voice interview.
*/}
Voice interviews can now go deeper on each competency.
* One voice interview can have **multiple competencies**
* Each competency can have **multiple primary questions** plus their follow-up questions
* Each primary and follow-up question carries its own **ideal response** for the AI to score against
Reports are now private by default. Share deliberately, share safely.
* Reports can no longer be viewed publicly unless you generate a **Share URL**
* Choose who can see a shared report:
* **Specific people** by email
* **Specific company domains** (e.g. anyone at `@yourcompany.com`)
* **Fully public** link
* Toggle visibility on or off any time
**Per Share URL, you can configure:**
* **General access** — who's allowed to open the link
* **Link expiry** — set a date when the link stops working (or "No expiry")
* **Hide from viewers** — pick what to redact from the report:
* **Hide candidate PII** — name, email, phone, location, photo
* **Hide screening form responses**
* **Hide internal evaluations** (scorecards, hiring-manager notes)
Useful for blind reviews, external interview panels, or sharing with clients without leaking your private notes.
Reports are **private by default** now. If you previously sent someone a raw report URL, they may no longer be able to open it. **Generate a Share URL** and resend.
A "Fully public" share link works for **anyone who has the URL** — including people you didn't send it to (if it gets forwarded). For sensitive roles, restrict to **specific people** or a **company domain** instead.
Candidates no longer see a harsh rejection screen when there's nothing left to evaluate.
* If a candidate falls below the cutoff at the **last stage** — or if everything left is a psychometric, they finish the pipeline normally and see the same completion screen as anyone else
* Recruiters still see the truth on the Kanban board — the candidate still lands in **Poor Fits** with the real score
* No change for failures earlier in the job stages pipeline — those still show the rejection screen as before
A candidate who has done everything we asked shouldn't be told "you're rejected" the moment they hit submit. Recruiters lose nothing — the Kanban board is unchanged.
A new per-assessment toggle: **Disable Editor Locking**.
* **Off (default)** — strict editor: no copy/paste, no right-click, no autocomplete. Same as before.
* **On** — relaxed editor: copy/paste, IntelliSense, right-click, command palette all work normally
Fullscreen, tab-switch tracking, devtools blocking, webcam recording, and session replay **always stay on** during a live assessment — regardless of this toggle. The toggle only controls the editor's strictness, not browser-level proctoring. Only Copy/paste and keyboard shortcut activity will not be tracked if this is disabled.
Useful for when the standard lockdown feels too aggressive.
With editor locking off, candidates **can paste code from anywhere** and use full autocomplete. We still record the screen and webcam.
# May Week 2
Application forms can now grade candidates with points — not just pass / reject.
* New question type: **Scored multiple choice**. Each answer carries **0–100 points** (better answers = more points).
* Set a **Minimum total points** under the form's settings — anyone below it is auto-rejected, the same way knockout questions already work.
* Live helper shows the **best possible total** as you build, so the minimum is never set higher than what's achievable.
* Candidates only see the answers — **never the points**.
* Recruiters see the score on the report — total, max, and a green **+points** chip next to the answer the candidate picked.
If a candidate leaves a scored question blank (only possible when it's not required), it counts as **0 points** toward the total. The maximum possible total does not change.
Each candidate's score is **frozen at the moment they submit**. If you later change the points on an answer, existing candidates keep the score they had at submission. Only new submissions use the new points.
Application forms can now branch — a question can be set to appear **only when an earlier answer matches**.
* On any question, open **Advanced → Conditional logic** and pick an earlier question + the answer that should trigger it.
* Works with: yes/no, dropdown, scored multiple choice, multi-select, number, and date questions.
* Hidden questions are **completely ignored** — not asked, not required, and they can't reject anyone.
* Candidates see a clean, shorter form tailored to their earlier answers.
A conditional question must always sit **below** the question it depends on. The builder will block any drag-and-drop reorder that breaks this.
If you change the type of a question that other questions depend on (e.g. turn a dropdown into text), the dependent rule turns red with **"Invalid — re-pick"**. The form can't be saved until you fix it. Deleting a parent question clears the dependent rules automatically.
On the candidate's report, questions that were hidden from them show up dimmed with a **Skipped — conditional** chip. You can always tell which questions a candidate was actually asked.
Picking a psychometric stage is now a visual choice — and you can read every question before committing.
* All 5 frameworks now appear as **cards** with number of traits measured and a description. With an ability to view every question, the trait it measures, and the response scale used
The 5 frameworks are standardised, research-backed instruments. You can only **view** the question but not change them.
Voice interview reports now tell you, whether the candidate's connection held up during the call.
* A small **Connection** tag appears next to "Time Taken" on every voice attempt — **Spotty Connection** (amber) or **Bad Connection** (red).
* Hover the tag for a narrative explanation: what the candidate experienced ("about half the call's voice data was lost in transit"), what network they were on, and — for bad connections — a clear recommendation.
* Clean calls show **nothing** — the tag only appears when it's worth your attention.
This surfaces it so you can spot the difference between a weak candidate and a weak signal.
The verdict is measured **automatically during the call** — packet loss, response delay, dropped reconnections, audio paused by the server. None of it is self-reported. The candidate cannot fake or exaggerate a bad connection to explain a poor interview.
A **Bad Connection** tag is a strong signal the candidate's performance was distorted by their network — not their skills.
Spotted a wrong score, a broken transcript, a missing recording, or anything that doesn't add up? Flag it in one click.
* New **🚩 Flag** icon at the right of the report's results strip — on both assessment and prescreening reports.
* Click it, type a short note, hit **Flag**.
* The flag goes straight to the GoodFit team's internal channel — so we can investigate without going back and forth.
Wrong score, broken transcript, missing audio, a knockout that should not have fired, evaluation that contradicts the transcript — anything. We'd rather see a false alarm than miss a real bug.
Every important page now has a **question-mark icon** next to its title — click it to open the matching help article.
* Icon appears on **Create Job**, **Email Settings**, **Careers Page**, **Members & Permissions**, **Employee Referrals**, and more (we'll keep adding).