Passive voice creeps into LLM output constantly — “the report was generated by the system” instead of “the system generated the report.” It is wordier and vaguer about who did what. This tool flags likely passive-voice sentences with a fast local heuristic, and — with your own OpenAI or Anthropic key — rewrites the flagged ones in active voice while keeping the meaning intact.
Why passive voice is common in LLM output
Language models are trained on large bodies of text that include formal writing, academic papers, technical documentation, and corporate communications — all genres that favour the passive voice. As a result, LLMs default toward passive constructions even for tasks where direct, active prose would serve better: marketing copy, product descriptions, customer emails, instructional guides. The passive also lets a model avoid naming a concrete subject when it is uncertain who did what, which is a subtle form of hedging.
How it works
Detection is local and free: the tool scans each sentence for a form of to be (is, are, was, were, been, being) followed by a past participle, optionally with a by agent, and highlights matches with a count. No key is needed for this step. If you want rewrites, add your API key and run the rewrite — the tool sends one direct request from your browser asking the model to convert only the flagged sentences to active voice and return the full revised text.
Your key never reaches a Gera server — it is held only in the tab and sent straight to the provider (with the official direct-browser-access header for Anthropic). Refreshing clears it.
Examples of the heuristic in action
The detector catches these patterns:
- “The document was reviewed by the team” — auxiliary
was+ past participlereviewed+byagent. - “Errors are logged automatically” — auxiliary
are+ past participlelogged. - “The process had been completed” — auxiliary
had been+ past participlecompleted.
It is less reliable on:
- Progressive passives: “The system is being updated” is caught; “The system keeps being updated” may not be.
- Stative passives that read as adjectives: “The door was open” scores as passive but
openis an adjective, not a past participle.
These edge cases are why the output is a list of candidates to review, not a mandate to rewrite every flagged sentence.
Passive voice isn’t always wrong
The detector finds candidates, not crimes. Passive voice is the right choice when the actor is unknown, unimportant, or intentionally downplayed, and it is standard in much scientific and formal writing. Use the flags as prompts for judgement, not a mandate to rewrite everything.
Tips
- Detect first, read the highlights, and only rewrite when the active version is genuinely clearer.
- Cheaper models (gpt-4o-mini, claude-3-5-haiku) handle straightforward rewrites well and minimise cost.
- After rewriting, re-run detection to confirm the passive count actually dropped.
- If you are editing marketing or product copy, a passive count above roughly 20% of sentences is a signal the draft reads too formally for a consumer audience.