Eric Hinzpeter
NOTE· 2026-07-24· 4 min

Why I Built My Own AI Phrase Checker Instead of Trusting an AI Detector

AI detector tools ask you to paste your text into their server and hand back a confidence score nobody can justify. I built a lint instead: it flags what makes text read like a chatbot, and your draft never leaves the browser.

I don't trust AI detector tools, and it's not a vague feeling. Most of them are paid products that ask you to paste your text into their server and hand back a confidence percentage for a question nobody can answer: did a human or a machine write this. I got tired of being asked to trust that, so I built the version I'd actually believe.

The AI detector claim doesn't hold up

Here's the thing that bothers me about the whole category. "AI detection" implies there's a reliable signal in the text itself that separates human writing from machine writing, and treats a paid tool's percentage as if it were a fact about the world.

A 2023 study on GPT detectors found they're unreliable in general and specifically biased against non-native English writers, flagging their perfectly human writing as AI-generated far more often than native speakers' text. That's not a minor accuracy problem. That's a tool making confident, wrong claims about real people, and getting paid for it.

I don't build things I wouldn't trust myself, so the AI Phrase Checker doesn't claim to detect AI, and it never tries to.

What it actually does instead

It's a lint. It checks patterns, and it doesn't claim to detect who wrote the text. It scans your text against word lists and phrase patterns that show up constantly in LLM output, the same list behind my own humanizer-en editing checklist, and tells you which ones are in there.

That's a narrower claim, and it's one I can stand behind. The checker doesn't guess who wrote your text. It flags what makes text read like a chatbot wrote it, whether a chatbot did or not.

Seven patterns, plus the em dash

The English set checks seven categories: AI vocabulary (delve, tapestry, testament to, seamless, pivotal), throat-clearing ("it's important to note"), negative parallelism ("not just X, it's Y"), vague attribution ("experts say"), summary endings ("in conclusion"), puffery ("stands as a testament to"), and chatbot leakage that survived a copy-paste ("I hope this helps", "let me know if"). Em dashes get counted on their own, because one em dash means nothing and one every other sentence means everything.

The German set mirrors this with its own seven categories and its own vocabulary: "entscheidend", "nicht nur... sondern", "zusammenfassend lässt sich sagen", and the rest. Language gets auto-detected from the text you paste, so an English draft and a German one can go back to back without you touching a switch.

Matches get highlighted in the text, then grouped into a findings list with a count per pattern. The verdict is a density score, patterns per 100 words, a simple tally rather than a probability of anything. Under 1 per 100 words reads as clean, 1 to 3 as some AI patterns, above 3 as heavy.

What it can't do, and I mean that

The tool page says this outright, because it's the whole point: it can't tell you whether AI wrote your text. A human who writes stiff corporate marketing copy will light this thing up with puffery and vague attribution. A carefully edited AI draft, humanized properly, will pass it clean with barely a mark. Neither of those results tells you who typed the words.

What the score does tell you is whether a text reads like AI output right now, in its current form. That's the thing that costs you credibility with a reader, and it's true regardless of who wrote the sentence. I'd rather sell you that honest, smaller claim than a confident, bigger one I can't back up.

This is the same honesty check I ran when I measured what a humanizer pass does to raw AI text: the pass strips the obvious tells and the padding, and I could put real before-and-after numbers on that. It never claimed to write the specific fact or the real opinion for you. Same limit applies here. The checker finds the tells. It doesn't decide whether your argument is any good.

When I use it

Before publishing anything an LLM touched, I run it as a last pass looking for leftover tells. When I'm editing AI output for a client, it gives me a concrete list instead of a gut feeling about what sounds off.

It sits alongside the other 11 tools I built for the same reason, free, browser-only, because the alternative kept being a paid product asking me to trust a claim I couldn't verify. This one, at least, only claims what it can show you.

FAQ

Can the AI Phrase Checker tell me if a text was written by AI?
No, and it doesn't try to. Nobody can reliably tell AI-written text from human text, and a 2023 study found commercial AI detectors are especially unreliable on text from non-native English writers. The checker flags patterns that make text read like AI output, which is a different and more honest claim.
Then what's the point if it can't detect AI?
Whether a text reads like AI output is what makes a reader trust it less, regardless of who wrote it. A human writing stiff corporate copy will light the checker up, and a carefully edited AI draft will pass clean. It's checking the writing, not the author.
Does my text get uploaded anywhere?
No. The checker runs entirely in your browser as you type. Nothing gets sent to a server, which matters if the draft you're checking is client work you're not supposed to share.
What exactly does it check for?
Seven pattern categories in English: AI vocabulary like delve and testament to, throat-clearing like it's important to note, negative parallelism like not just X but Y, vague attribution like experts say, summary endings like in conclusion, puffery like stands as a testament, and chatbot leakage like I hope this helps. Em dashes get counted separately since density matters more than a single use. German has a matching set of seven.
How does the score work?
It's patterns per 100 words, not a percentage claiming to be a probability. Under 1 pattern per 100 words reads as clean, 1 to 3 as some AI patterns, above 3 as heavy AI patterns. Language is auto-detected from the text, so you can check an English and a German draft back to back without switching anything.
Where do the pattern lists come from?
Wikipedia's WikiProject AI Cleanup maintains a running list called Signs of AI-generated writing, built from thousands of observed AI edits. I use the same list in my own editing checklist, so the tool and my actual workflow stay in sync.

Written by

Portrait of Eric Hinzpeter

Eric Hinzpeter

Eric Hinzpeter, Senior B2B Content Strategist. He builds production AI agents and marketing automation, and documents the results here.

AboutLinkedIn