AI Detective analyzes text and estimates how likely it is to have been written by an AI, a human, or some combination of both. It runs entirely through Anthropic's Claude API, using your own API key — there is no account to create and nothing to sign up for on this site.
sk-ant-).Connecting does two things: it confirms your key is valid, and it fetches the actual list of models available to your account, replacing the three default options in the Model dropdown with your real list.
By default, your API key lives only in this browser tab's memory. Close the tab and it's gone — nothing is saved anywhere.
A status bar at the bottom of the screen shows whether your settings are currently being saved to this device, with a one-click toggle:
The first time you successfully connect a key, you'll be asked whether you'd like to remember it. Saying yes turns saving on and stores the key together, in one step.
Provide your text one of three ways, using the tabs at the top of the input card:
| Tab | What it does |
|---|---|
| Paste Text | Type or paste directly into the box. |
| Upload File | Upload a document. Supported formats: TXT, MD, HTML, XML, JSON, DOCX, PPTX, ODT, PDF, RTF, EML. All parsing happens in your browser — files are never uploaded anywhere except the extracted text, which goes to Anthropic when you click Analyze. |
| From URL | Enter a web page URL and click Fetch page text. The server fetches the page and extracts the main article text (skipping navigation, ads, etc.), shown in a box below for review before analyzing. |
| Option | What it does |
|---|---|
| Model | Which Claude model runs the analysis. More capable models cost more per analysis. |
| Effort | Reasoning depth: Standard, Low, Medium, High, X-High, or Max. Higher levels can improve accuracy but cost more. Not every model supports every level — if rejected, you'll see a plain message and the app automatically resets it to Standard. |
| Extended Thinking | Lets Claude reason step-by-step before answering. Works independently of Effort. Increases cost. |
| Flagged AI phrases | Highlights the specific phrases most indicative of AI writing. Adds cost. |
| Check citations | Validates any citations found in the document. See Citation Validation below. |
| Split large files into chunks | For documents beyond the recommended size limit, splits the text into pieces, analyzes each, then combines them into one length-weighted result. Without this on, oversized documents are truncated instead (you'll be warned either way). |
| Pre-AI-era warning | Upload File only. When enabled in Settings (see below), warns if the file's date predates your AI era cutoff before analyzing it — such files are unlikely to contain AI-generated text. Not a separate toggle here; controlled from Settings. |
Click Analyze Document. The first time you do this in a new browser session, you'll see:
While an analysis runs, the button becomes Cancel Analysis — click it to stop (you'll be asked to confirm). Once complete, results appear on the right, and a Clear button appears to reset for a new document.
The colored bar shows four percentages that always add up to 100%:
A separate measure of how certain Claude is in the overall assessment — not one of the four categories above. Low confidence often means the text is short, technical, or has mixed characteristics.
Specific observations that informed the assessment, each tagged by type: Strong AI or Moderate AI (confidence in an AI indicator, strong being the higher-confidence of the two), Weak AI (ambiguous, could be either), Human (a specific human writing trait), or Edited (evidence of human revision to AI-generated text, or AI polish applied to human-written text). Color-coded to match the score bar above: AI-family tags in red, Human in green, Edited in blue, Weak AI in gray.
If citation checking was enabled, a list of every citation found, each marked valid, suspicious, or invalid. See Citation Validation below for full detail.
A plain-English paragraph explaining the verdict. If the document was chunked, this notes how many chunks were analyzed and the range of AI% scores observed across them.
Two export buttons appear after an analysis completes:
Switch to Batch using the toggle at the top of the page. Batch mode analyzes many files in one run.
| Option | What it does |
|---|---|
| Spending limit | The batch stops automatically once this total is reached (checked after each file completes, not mid-file). |
| Pre-AI-era skipping | When enabled in Settings (see below), automatically skips files dated before your AI era cutoff without analyzing them — saves time and cost. Not a separate toggle here; controlled from Settings. |
| Produce detailed Signals file | Collects every file's full signal list into one downloadable text file, in addition to the regular exports. |
All the other options (Model, Effort, Thinking, Flagged Phrases, Citations, Chunking) work identically to Single mode and stay synced with it.
Each file produces a [SIG] line showing its scores, color-coded by the dominant result (red = AI, green = Human, blue = Edited), followed by a [CIT] section if citation checking is on, with per-citation results and a summary count.
If chunking is enabled and a file is too large, it's split and each chunk appears as its own labeled row,
e.g. report.docx [1/3], report.docx [2/3] — unlike Single mode, batch does not
combine chunks into one result; each is shown and counted separately.
Three export options once the batch completes: CSV, Text report, and PDF report (plus Signals Detail if that option was enabled).
When enabled, Claude extracts every citation in the document and screens it for format validity and suspicious patterns. Optionally, uncertain citations are also checked against real external databases:
| Tag | Service | Checks | Setup |
|---|---|---|---|
| Claude | Anthropic Claude | Format and plausibility screening | Uses your existing API key — nothing extra needed |
| CR | CrossRef | Academic journals | Free, no key needed |
| OA | OpenAlex | Academic (broad) | Free, no key needed |
| CL | CourtListener | US case law | Free token — register at courtlistener.com, add it in Settings |
| PM | PubMed | Medical literature | Free; an optional NCBI key raises the rate limit from 3 to 10 requests/sec |
| OL | OpenLaws | Statutes & regulations | Coming soon — paid service |
Each citation is marked:
Every analysis is automatically checked for content that appears designed to manipulate the tool itself — this runs on every analysis, in both modes, with no setting to turn it off, since the people most exposed to this risk are usually the ones who don't know to look for it. There are two independent checks:
| Check | What it looks for |
|---|---|
| Structural | Text hidden in the document's actual file format — Word's "vanish" formatting, extremely small font sizes, CSS display:none/visibility:hidden tricks in HTML or HTML email content. This inspects the file's real markup, not just what's visibly rendered. |
| Semantic | Content — hidden or in plain view — that reads as an attempt to instruct or override the analysis itself (e.g. text addressed to an AI telling it to ignore prior instructions or report a predetermined result). Runs as part of the same analysis call, on every input method including pasted text. |
Nothing appears if nothing is found — the common case stays uncluttered. If something is found:
[SEC] line appears in the batch log for any affected file, and findings are included in every export (Text, PDF, and a compact count in CSV).This is a best-effort screen, not a guarantee. Specifically:
Open Settings via the gear icon in the top bar.
| Section | Contents |
|---|---|
| Appearance | Color theme: System (follows your OS/browser setting), Light, Lark, or Dark. |
| AI Detection | One shared switch enabling the pre-AI-era checks in both modes, plus the cutoff date itself (default: November 30, 2022 — roughly when AI writing tools became widely available). |
| Batch Processing | Max files per batch (default 50) — set to 0 or leave blank for no limit. The cost estimate and pre-run confirmation still apply regardless, so a very large batch can still be reviewed and aborted before it actually runs. |
| Remembered API Key | Shows whether a key is currently saved on this device, with a Forget button. |
| Citation Services | CourtListener token and PubMed/NCBI key fields. |
| Spending Summary | Running total of what you've spent and how many analyses you've run (persists across sessions if you're saving settings; session-only otherwise), with a reset button. |
| Session | Clear your session history (the list of recent analyses, viewable via the clock icon). |
Every analysis uses your own Anthropic API credits — this site never sees or charges you anything itself. An estimated cost is shown before you click Analyze, and the actual cost (calculated from the real tokens used) appears afterward.
Extended Thinking and higher Effort levels can significantly increase token usage and therefore cost — the pre-analysis estimate accounts for this roughly, but actual usage varies with the specific document and model. Citation checking adds a second API call, and each chunk in a split document is its own full call.
| Shortcut | Action |
|---|---|
| F5 or Ctrl+Enter | Analyze (Single mode) or Run Batch (Batch mode) |
| Ctrl+Tab | Switch between Single and Batch mode |
| Ctrl+S | Save report as text (Single mode, once a result exists) |
| Ctrl+Shift+C | Copy results (Single mode, once a result exists) |
| Esc | Cancel the current analysis, abort a running batch, or close an open panel |
Double check your key is copied correctly (starts with sk-ant-) and that your Anthropic account
has active credits.
This is normal — it runs roughly once per hour of activity as a bot-prevention measure, not a sign of a problem.
Very long documents are either truncated (with a warning first) or, if you've enabled chunking, split and analyzed in pieces. Turn on Split large files into chunks for full coverage of long documents.
Not every model supports every setting — this varies and changes over time. If a request is rejected, you'll see a plain message saying so, and the app automatically resets that setting (Effort back to Standard, or Extended Thinking off) so you don't have to fix it manually before trying again.
Check the status bar at the bottom of the screen — if it says settings aren't being saved, nothing persists between visits. Turn saving on to keep your preferences.
This guide covers how to use the app. For the full legal and privacy detail, see:
See also Section 7 for how the app checks documents for hidden content and prompt-injection attempts.
In short: your document text goes only to Anthropic's API, using your own key. This site's server never logs, stores, or retains document text, citation content, or your full API key. An anonymous activity log tracks which actions were taken and whether they succeeded, for debugging and usage analysis — never document content.