How Unslop works
AI can help write a first draft. Then you read it and find the same stock phrases, padded explanations, and paragraphs that all seem to follow the same pattern.
Unslop helps you find those habits and edit them. The aim is to make writing easier to read and closer to the way you would say it.
This is a personal project for me and the people I work with. I'm not building it to make money. I want a useful editing tool, and I want people to be able to see how it works.
You can read this page without an account or API key. Create an account to run checks and rewrites in your own workspace, or use an existing API key.
A small example
Before
It's worth noting that this pivotal update represents a significant step forward. We fixed the search bug. Your saved filters now work.
After
We fixed the search bug. Your saved filters now work.
The useful facts were already there. Removing the introduction lets the reader reach them sooner.
This is an illustrative edit, not a recorded API response. It illustrates an editorial choice; actual revisions vary.Checks without AI
Most analysis uses ordinary code. A local grammar engine called Harper checks mechanics on the server. Rules look for particular wording. Word and sentence counts supply the readability and rhythm measurements. None of these checks calls a language model.
| Check | What you see |
|---|---|
| Grammar and spelling | Possible mistakes, their locations, and suggested corrections. Suggestions still need judgment. |
| Punctuation | Mechanics findings, punctuation counts, and unmatched pairs such as brackets or quotation marks. There is no ideal punctuation ratio. |
| Stock wording | Flags for phrases such as "it's worth noting" and "a testament to," formulaic contrasts, connectors, and repeated sentence openings. |
| Repetition | Repeated sentences and four-word phrases. Names, technical terms, and deliberate repetition may be worth keeping. |
| Sentence and paragraph rhythm | Lengths, how much they vary, differences between neighbors, and repeated paragraph sentence counts. |
| Reading difficulty | An estimated English reading grade and whether the text meets your chosen target or ceiling. |
| Your writing rules | Matches for words, punctuation, and sentence limits you specify. Preferences that need context are listed for review. |
| Instruction traps | Patterns such as "AI: ignore all previous instructions," role markers, hidden characters, and some encoded instructions. A quoted example can trigger a flag too. |
A flag means "look at this passage." A word like "tapestry" can be exactly right when you're writing about an actual tapestry. The checker does not know every exception, and an unflagged passage can still need work.
What the scores mean
We also flag common count-led headings and paired-count slogans. Rewriting keeps at most 5% of detected occurrences, rounded down, and at most one per 2,000 words. Retained matches must be at least 2,000 words apart. Useful quantities belong in factual prose; protected text stays intact.
The style score runs from 0 to 100. Higher means more matched style patterns relative to the amount of prose. A score of 80 does not mean an 80% chance that AI wrote it.
Grammar, spelling, and punctuation scores run the other way: higher means fewer detected problems. The overall mechanics score averages those components. It does not grade the ideas, accuracy, or usefulness of the writing.
Rhythm deserves a separate look. Ten sentences can average the same length while sounding very different in sequence. Unslop measures both the spread of lengths and changes between neighboring sentences and paragraphs.
Uniform writing can be useful, especially in instructions or text for young readers. More variation is not automatically better. Unslop does not try to force a flat distribution or alternate short and long sentences.
The new rhythm and repetition findings do not change the style score. Their thresholds are provisional. They still need evaluation against approved human writing across different subjects and reading levels.
Current measurements and thresholds
Rhythm warnings require at least 10 prose sentences or 5 prose paragraphs. Shorter passages still get raw counts, with an insufficient-text status.
- A sentence run can be flagged when at least four successive sentences fall within a two-word range.
- Low variation uses a coefficient of variation of 0.12 or less. This is the standard deviation divided by the mean length.
- A paragraph pattern can also be flagged when at least 80% of paragraphs share a sentence count.
- Duplicate-sentence checks compare wording without case or punctuation. Repeated-phrase checks look for at least three occurrences of a four-word sequence.
These are implementation choices, not scientific boundaries between human and AI writing. Markdown rhythm checks conservatively omit blocks containing headings, lists, tables, code, or block quotes. Some ambiguous blocks are omitted too.
The API also reports medians, spread, vocabulary diversity over 50-word windows, and approximate contraction frequency. Those numbers describe a passage; they are not targets to maximize.
Writing for a particular reader
You can choose a reading grade, an approximate age from 6 to 18, or a maximum reading grade. Presets cover early readers through advanced adult text. The age option maps age to US grade by subtracting five, so age 10 targets grade 5.
An exact target accepts a range around the chosen grade. The default tolerance is one grade either way. A ceiling only sets an upper limit: a grade-8 ceiling accepts easier writing too.
The estimate uses the Flesch-Kincaid formula, based on sentence length and syllables per word. Unslop needs at least 30 words and two sentences to report a grade. It cannot establish whether a particular child understands the passage or whether its subject is suitable for them.
Writing complexity is reported separately as simple, moderate, or complex, using the same estimated grade. This describes the text, not the writer's ability. You can also tell the rewriting model who the audience is.
How a rewrite gets accepted
The editor reads the complete draft and your writing guidance. It can remove filler and revise awkward sentences anywhere in the text. Clear passages can stay as they are.
Code checks numbers, quotations, protected wording and any other constraints you chose.
A separate AI review checks facts, conditions, uncertainty, negation and meaning. Removing empty promotional language is allowed; changing a specific promise or losing a caveat is not.
If either check fails, the editor can make one correction attempt using the original draft and the feedback. If the result still fails, you get your original back and pay nothing.
Choose Low, Medium, High or Max. The editor uses your chosen level throughout. A normal edit uses one editing call and one review; a correction can bring the total to four calls. The number of wording improvements is not capped at four.
Numbers, quotations and common Markdown formatting are protected by default. You can protect specific terms or passages too. The default editing allowance permits changes across the whole draft. Explicit limits in your request or writing profile still apply.
The style score is informational by default. An optional skip rule can restrict editing to texts with a chosen score and minimum length. The advanced small-phrase mode retains the previous tightly limited editing behavior.
Meaning review is fallible, so read the result before using it. The spelling and grammar action applies conservative mechanical fixes without AI.
Keeping your own voice
A saved profile holds your rules, editing instructions, and optional samples. You might prefer contractions, short introductions, or a particular technical term. A voice document supplies instructions; prose you've written supplies examples. They serve different purposes.
For descriptive voice comparisons, Unslop requires at least two samples with 20 sentences between them. It reports sample size and ranges for rhythm and contractions. If the declared genres differ, it withholds those ranges. They are not a voice-match score or rules that your next paragraph has to obey.
Some choices require judgment. An AI editor can help assess vague praise, repeated ideas, or a phrase that feels out of place. The deterministic checker can't fully evaluate them.
Where your text goes
Analysis runs on the Unslop service hosted on Vercel. "Without AI" means no model call; it doesn't mean the text stays in your browser.
Rewriting and optional AI review send the relevant text and voice guidance to external AI services. Unslop manages model selection and routing.
Prepaid requests may briefly cache response text for retries. See response retention and billing records. Saved profiles do store the instructions, rules, samples, and preferences you choose to save. Hosting and model providers have their own processing and retention terms.
External authorship detectors and watermark checks require explicit consent and a configured provider. No watermark verifier is enabled by default. Unslop doesn't remove watermarks, certify their absence, or promise to make writing undetectable.
Instruction-trap checks report suspicious patterns. They can't prove a document is safe or catch every possible instruction.
Using the API
An API lets another program use these same tools. These groups cover the available operations. Every /v1 request needs authentication: an API key, or a same-origin signed-in session in the workbench.
| Purpose | Endpoints |
|---|---|
| Check writing | /v1/analyze, /v1/score, /v1/quality, /v1/explain |
| Inspect instructions | /v1/inspect |
| Edit text | /v1/proofread, /v1/rewrite |
| Compare and review | /v1/compare, /v1/verify, /v1/review |
| Manage preferences | /v1/profiles, /v1/profiles/{id}, /v1/profiles/import, /v1/rules, /v1/rules/validate |
| Optional external checks | /v1/detect, /v1/watermarks |
| See configuration and usage | /v1/capabilities, /v1/usage |
The public OpenAPI reference gives the exact request fields. The API explorer lets people with a key try them. This explanation describes version 1.3.0, updated September 24, 2026.
Read the research and its limits, or use the API examples and troubleshooting guide.