> ## Documentation Index
> Fetch the complete documentation index at: https://docs.heymilo.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Interview Integrity (Cheat Detection)

> Interview integrity helps you spot possible cheating during web (voice/video) interviews—off-screen help, suspicious timing, device use, and similar signals. Flags are for review; they do not auto-reject candidates or change scores.

<video controls src="https://storage.googleapis.com/heymilo-pub-docs/videos/Cheat%20Detection%20V2.mp4" />

### Before you start

* If you don’t see these controls, contact your dedicated CS Manager or [**support@heymilo.ai**](mailto:support@heymilo.ai) (or in-app chat).
* **Candidates** to use a **current** browser; **allow camera and microphone** when prompted (needed for video-based signals).

**Browsers (keep updated):** **Chrome** (best tested), **Edge**, **Firefox**, **Safari** (macOS/iOS). Other Chromium-based browsers (Brave, Opera, Arc, etc.) usually work. **Internet Explorer** is not supported.

### Where to configure (two places)

#### 1) Workspace default (usual starting point)

**Path:** **Sidebar → Interviewers → Tools → Interview Integrity**

Use this when you want **one default** across interviews.

<Frame>
  <Frame>
    <img src="https://mintcdn.com/heymilo/jtbNdVQzkyR-_mgH/images/image-83.png?fit=max&auto=format&n=jtbNdVQzkyR-_mgH&q=85&s=f0fc5026cc9363c1fba276b07d6178d7" alt="Image" width="1520" height="680" data-path="images/image-83.png" />
  </Frame>
</Frame>

**Settings**

* **Enable Cheat Detection**: Workspace-wide on/off for interviews that use these defaults.
* **Detection Threshold (0–100)**: How **strict** flagging is. **Lower** = fewer flags; **higher** = more. A practical starting point is **\~70**.
* **Detection Types**: Which signals to monitor (see below). Use **Select All** / **Deselect All**.

Click **Save Settings**.

#### 2) Per interviewer (override)

**Path:** **Create or Edit Interviewer → Voice/Video (web interview) workflow step → Settings** (cheat detection section)

<Frame>
  <img src="https://mintcdn.com/heymilo/eCagIs49PghmSYvj/images/cheat-detection-v2-settings.png?fit=max&auto=format&n=eCagIs49PghmSYvj&q=85&s=5527f9f7c763f36cc1c0954dc9bc10b4" alt="Cheat Detection V2 settings on a per-interviewer basis" className="mx-auto" width="1024" height="849" data-path="images/cheat-detection-v2-settings.png" />
</Frame>

You can use the workspace default (V1) settings here, or toggle on **Enable Cheat Detection V2** (Beta) to use the newer detection service for this interviewer only. V2 replaces the legacy detection flow for that posting and exposes tunable sliders instead of a single threshold.

**V2 Global Thresholds**

| Setting                                | What it controls                                                    |
| -------------------------------------- | ------------------------------------------------------------------- |
| **Max Alerts Per Breach**              | How many alert events can be recorded per breach (1–10).            |
| **Minimum Continuous Breach Duration** | Minimum seconds a signal must persist to count as a breach (0–60s). |

**V2 Detection categories**

**External Assistance Integrity** — whether the candidate is receiving help from outside sources.

| Type                                   | What it’s looking for                                                                                                                                                                                 |
| -------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **External Voice Assistance Detected** | A non-candidate voice speaking during the candidate's answer window (whispered prompts, off-screen guidance, third-party conversation). Tunable via **Speaker-Cluster Distance Threshold** (0.1–1.5). |
| **Covert Response Sync Pattern**       | A pause-then-cue-then-immediate-answer pattern repeated across questions. Tunable via **Max Acceptable Response Delay** (1–60s).                                                                      |

**Response Authenticity Integrity** — whether answers are genuinely produced by the candidate in real time.

| Type                                        | What it’s looking for                                                                                                                       |
| ------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| **Synthetic Response Generation Suspected** | AI-generated answer text. Whole-paragraph AI probability compared against a threshold. Tunable via **AI Text Probability Threshold** (0–1). |
| **Paraphrased Response Suspected**          | AI-rephrased candidate answers. Tunable via **Paraphrased Text Probability Threshold** (0–1).                                               |

### Detection types (V1 workspace default)

These apply when V2 is not enabled. Signals are **observational** — they indicate *something looked unusual*, not *intent*.

| Type                   | What it’s looking for                                                                          |
| ---------------------- | ---------------------------------------------------------------------------------------------- |
| **Facial Behaviour**   | Sustained or repeated looking **away** from the screen (e.g. notes or another display).        |
| **Multiple People**    | **More than one person** visible in frame during the interview.                                |
| **Phone Detection**    | A **mobile device** appears in view.                                                           |
| **AI/Scripted Answer** | Answer patterns that **resemble** scripted or AI-like structure/timing (heuristic, not proof). |
| **Unusual Delays**     | **Long or inconsistent** pauses that may suggest off-screen help or lookup.                    |
| **Tab Switching**      | Candidate **leaves the interview tab/window** during a response.                               |

### Reviewing results

**Path:** **Interviewers → \[candidate] → Verify**

<Frame>
  <img src="https://mintcdn.com/heymilo/ErNMEhuPdZ_-BPYS/images/verify-tab-integrity.png?fit=max&auto=format&n=ErNMEhuPdZ_-BPYS&q=85&s=60cfd3edaf3169ef84c262b3f782ac2f" alt="Verify tab showing Cheat Detection Overview" className="mx-auto" width="1024" height="735" data-path="images/verify-tab-integrity.png" />
</Frame>

Open **Cheat Detection Overview**. You will see:

* **Risk level**: Overall assessment with a recommended action (Reject or Further Review).
* **Total Breaches**: Number of flagged events in the session.
* **% Compromised**: Share of the session where signals were detected.
* **Categories Triggered**: Which detection types were activated.
* **Severity Breakdown**: High, medium, and low signal counts with percentage of session and duration for each.
* **Cheating Timeline**: A visual timeline of when flags occurred across the interview.
* **By Category**: Category name, severity, breach count, percentage of session, and duration.
* **Breach Details**: For each breach, timestamp range, severity, confidence percentage, recommended action, the candidate's original response, and sentence-level analysis.

**How to read confidence**

* **High confidence**: Worth a careful look, not confirmation of cheating.
* **Medium confidence**: Check context, such as question difficulty, nerves, or environment.
* **Low confidence**: Often lighting, angle, movement, or a one-off glitch.

**Patterns beat single events:** repeated signals across several categories, or spikes on hard questions, matter more than one isolated low-confidence flag.

### What cheat detection does **not** do

* Does **not** auto-fail or auto-advance candidates
* Does **not** raise or lower the **interview score**
* Does **not** replace recruiter judgment
* Does **not** use biometrics for “identity” decisions in the sense of facial recognition hiring outcomes—think **behavioral / environmental signals** for review

<Note>
  **Flags are informational.** Always pair them with **transcript**, **answers**, and **video context** before conclusions.
</Note>

### Best practices

* For V1: start near threshold **70**, then tune up or down based on noise levels.
* For V2: start with default slider values, then adjust individual thresholds if a specific category is generating too many or too few flags.
* Only enable detection types you will actually review.
* Give candidates clear setup instructions (quiet room, stable camera, good light, supported browser).
* Align as a team on how you interpret flags so decisions stay consistent.

### Troubleshooting

| Issue                       | What to check                                                                                                             |
| --------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| **No cheat detection data** | Feature disabled; interview very short; camera/mic denied; unsupported browser.                                           |
| **Too many flags (V1)**     | Lower the Detection Threshold; improve candidate instructions and environment.                                            |
| **Too many flags (V2)**     | Raise the AI Text Probability or Paraphrased Text Probability threshold; increase the Minimum Continuous Breach Duration. |
| **Weird inconsistency**     | Browser updates; lighting; camera placement; connection quality.                                                          |

### Next steps

* [Reviewing Candidates](../../getting-started/log-in/reviewing-candidates) — Score reports and workflow
* [How Scoring Works](../../getting-started/log-in/how-scoring-works) — Separate from integrity flags
* [Interview Evaluation](interview-evaluation) — Scoring and language rubrics
* [AI Settings](.) — Other workspace AI defaults

**Help:** [**support@heymilo.ai**](mailto:support@heymilo.ai) or in-app chat.
