What a template sounds like
An editor says a draft sounds like a machine wrote it. Usually they are right about what they heard and wrong about why — so we built a tool that counts the texture instead of guessing at the author, and then measured it against writing it was not built to catch.
The short answer
- what
- A free tool that marks repeated sentence shapes, stock phrases, uniform openings and unchecked claims in a text, with the rule behind every mark.
- why
- Readers react to texture rather than authorship, and authorship classifiers fail hardest on second-language writers and formal registers — where the cost lands on the author.
- who
- Writers defending an edit, editors explaining what they heard, and content teams whose pages have started sounding like each other.
- where
- On the public web at getlooploop.com/patternscope, in English, Ukrainian and Spanish, with no account and nothing stored.
- when
- Before you send a draft, or when somebody has told you it sounds machine-written and you need to know what they actually heard.
- how
- Deterministic detectors — phrase lists, sentence skeletons and word counts — scored as a weighted density per thousand words, with every point traceable to one marked span.
In plain words
Sometimes writing feels boring even when every sentence is correct, because the same shapes keep coming back. This tool colours in the parts that repeat and tells you which rule found each one, so you can decide whether to change them. It does not guess who wrote it.
An editor sends a draft back with one line: this sounds like ChatGPT wrote it. The writer did write it, over two days, and now has to argue about something neither of them can point at. That argument is the reason we built a tool, and the reason it refuses to answer the question it gets asked most.
Because the editor is usually right about what they heard and wrong about why. What they reacted to is not authorship. It is texture: the same sentence shape three times, four paragraphs opening the same way, a claim with nothing in the sentence to check it against. Those are countable. Who typed it is not.
Do not launch a detector that cannot explain itself or whose false positives make the score less useful than a manual read.
our own build plan, written before any of this existed
Why not an AI detector
We looked at building one and decided against it, on two grounds that have nothing to do with difficulty.
The first is where the errors land. Classifiers that guess authorship fail most often on second-language writers and on formal registers — the two groups least able to argue with a verdict. A tool that is 95% right is a tool that is confidently wrong about one draft in twenty, and the cost of that lands on the author, not on us.
The second is that a verdict is useless even when it is correct. An assistant wrote this changes nothing about the draft in front of you. This sentence shape appears four times in nine hundred words, here are all four is an edit you can make before lunch.
The four things we count
Every finding is a span of your own text with the rule that produced it named beside it. Four families, because a reader can hold four:
- Stock phrasing — a phrase occupying the place where something specific belongs. It is worth noting that. In connection with the fact that.
- Repeated shape — two sentences reduced to the same skeleton. Different words, one construction.
- Uniform openings — three or more sentences in a row that start the same way, reported as one finding rather than three.
- Unchecked claims — an evaluative adjective on an abstract noun, in a sentence with nothing checkable in it.
That last condition is what makes it a detector rather than a style opinion. A comprehensive solution is the claim. A comprehensive solution that cut review time from nine days to two is the same words with the evidence attached, and the second one is not marked.
skeletonOf("Our approach delivers a comprehensive solution")
→ "our · · art · ·"
skeletonOf("Our team delivers an individual approach")
→ "our · · art · ·"
// Different sentences. The same sentence. The skeleton is what says so —
// and the article/an distinction is dropped on purpose, because the surface
// form of an article is exactly the noise a skeleton exists to remove.Try it on your own page
See what PatternScope finds on a page of yours
Everything above is measurable on your own work, and the check takes about a minute. Paste one address and read what comes back.
Open PatternScopeFree · no account · one at a time
Every point traces to a mark
The number is a weighted density of findings per thousand words — a light finding counts 1, a medium 3, a heavy 6 — and the breakdown beside it is the number rather than a chart drawn near it. Disagree with a whole family and you can subtract it yourself. Dismiss one finding and the score goes down by exactly that finding's points.
Density per thousand words, because a raw count rewards length: a four-hundred-word landing page with six stock phrases is denser than a four-thousand-word report with fifteen, and counting says the opposite.
One habit cannot take the whole reading. A page built from a template repeats one sentence forty times; only the first four score, and the other thirty-six are reported as suppressed. All forty are still marked in the text — the cap is about scoring, not about hiding.
Then we wrote the labels down, and the labels disagreed
Up to this point every threshold in the tool had been checked against sentences written to trip it. That is a test of the code, not of the judgement: of course a detector fires on a sentence built to make it fire.
So we built a labelled set — fourteen documents across three languages and five kinds of writing: template marketing, well-edited prose, technical documentation, a deliberate anaphora, and a contract that is uniform on purpose. The floors are asymmetric, and deliberately so. On prose written to be good, the tolerance is zero: a finding there is a false positive that cannot be argued away. Recall is measured but not gated at 100%, because the same person wrote the rules and the labels, and agreement there is agreement with oneself.
| Kind of writing | Documents | Findings | Reading |
|---|---|---|---|
| Well-edited prose | 4 | 0 | clean, as labelled |
| Technical documentation | 3 | 0 | clean, as labelled |
| Deliberate anaphora | 2 | 2 | marked on purpose, dismissed in one press |
| Legal, uniform by design | 1 | 1 | marked on purpose, dismissed in one press |
| Template marketing | 4 | 30 | what the tool exists for |
Three defects, none of which a unit test could have found
A two-word window is wrong for half the languages we publish in
We deliver quality / We deliver speed share the opening we deliver. The Spanish that means the same thing — Ofrecemos calidad / Ofrecemos rapidez — drops the pronoun, so two words reach past the verb into the object, and the run went unreported. Spanish and Ukrainian are pro-drop; English is not; no constant is right for both. The window is now one content word plus the function words in front of it: the same amount of sentence in each language rather than the same number of words.
The ceiling was a guess wearing the clothes of a measurement
The score saturated at 12 weighted points per thousand words, with a comment claiming a calibration set behind it. There was no calibration set. Measured properly, clean prose sits at 0, a deliberate device between 34 and 83, and template marketing between 205 and 472 — so the old ceiling was low by more than an order of magnitude, and a sixty-three-word contract with one deliberate repetition scored 100 out of 100. Every short document with one heavy finding saturated a scale built for a page.
A test that could not fail
One fixture was 55 words against a minimum of 60, so the tool correctly declined to score it and the assertion about dismissing a finding passed without ever running. A test that cannot fail is worse than no test, because it is counted.
Weighted findings per 1 000 words, measured across the labelled set
Three languages, three lexicons, no translations
English, Ukrainian and Spanish, and each has its own phrase list written by somebody who writes that language. This is not thoroughness for its own sake. У зв'язку з тим, що and in connection with the fact that are two different habits in two different languages; a list translated from one measures the translation rather than the text. The thresholds were derived per language too, not inherited from the English ones.
French and Polish are on the roadmap behind exactly one condition: each needs its own labelled set first — the same bar the first three cleared.
What it still cannot tell you
Every document in the labelled set is between 60 and 300 words, so the top of the scale is an extrapolation from a single constant. A two-thousand-word page with a stock phrase every hundred words reads low today, and nothing we have measured proves that is right. Long documents are the next thing going into the set, and they will probably move the ceiling again.
It also cannot see whether your argument is correct, whether the order of your sections is wrong, or whether the piece was worth writing. Four rules are not the whole of good writing and a score of 0 is a reading, not a compliment.
Questions people ask
Is this an AI detector?
No, and it will not become one. It does not judge whether a text was written by a person or a model and does not imply it either. It finds specific editorial patterns and shows you where each one is.
Does a high score mean the writing is bad?
No. Pattern density is an editorial signal, not a grade. A contract is uniform on purpose and an anaphora repeats on purpose, and both read as dense. The number says where to look; whether it is a fault is your call.
What happens to text I paste in?
It is analysed inside the request and is not stored. No copy on our side, no result page to keep out of search, no retention window to explain. No model sees it either: every detector is deterministic, which is also why the same text always gets the same reading.
Why is the score capped?
Above the ceiling the number stops distinguishing anything — 340 and 700 per thousand words are both prose nobody wants to read. The tool says the reading is at its ceiling rather than pretending the distance means something.
Can I disagree with a finding?
Yes, and it is one press. A run of identical openings arrives as a single finding covering the whole device, so dismissing a deliberate anaphora does not cost four clicks. The score drops by exactly what you dismissed.
Which languages does it analyse?
English, Ukrainian and Spanish, each with its own phrase lists and its own thresholds. Text in another language is not analysed rather than analysed badly, and the reason is in the article above: a detector without its own lexicon returns zero for everything, and zero reads as praise.
Read it yourself
Paste a page into PatternScope and see what a reader is reacting to. It sits beside three other free readings on the free tools page, and the vocabulary in this article — AI slop, near-duplicate content, Goodhart's law — is in the glossary.
That last one is worth reading before you optimise this number. A measure that becomes a target stops measuring, and a writer editing to get the score down rather than to be understood has taken the wrong instruction from a tool that only ever meant to point.
The product
Watch it on every page, every day
One reading tells you where a page stands today. The product asks the same questions of the same assistants continuously, so a change is something you are told about rather than something you go looking for.
Request an invitationInvite-only while we keep the readings honest
Author
GetLoopLoop AIAI research system
AI-assisted research, synthesis and measurement by GetLoopLoop.
GetLoopLoopPass it on
Read in your language
Opens a browser translation of this English article. The original source stays in English.