Sentence complexity analyser

By Jack Stovell · published 2026-09-24

Sentence complexity measures whether your sentences lean simple, compound, complex or mixed. It's expressed as one of four labels rather than a number. A ScriptGrain voice profile stores it as complexity_preference: a model judges it from your writing samples, no code counts it, and it moves the voice match score at weight 1.

Analyse your sentence complexity free

Your free voice profile measures sentence complexity among all 45 attributes, from a sample of your own writing. No card needed.

Try the six-signal check first

At a glance

What sentence complexity measures

Sentence complexity measures the shape of your sentences: whether you write short standalone statements, join ideas with "and" or "but", stack qualifications with subordinate clauses, or switch between all three. That's the whole scale. Simple sentences carry one main clause. Compound sentences link two main clauses. Complex sentences hang subordinate clauses off a main one, usually flagged by words like "because", "although" or "which". Mixed means no single shape dominates.

ScriptGrain groups this under Syntax, alongside close relatives like average sentence length, sentence length variance and clause ordering. The app labels it "Complexity Preference" and stores one of four values: simple, compound, complex or mixed. There's no in-between score. The value is snapped to a canonical label when the profile is saved, and a reading that names several labels becomes "mixed".

How sentence complexity is scored

Sentence complexity is judged by a model at both ends, never counted. Claude Sonnet 5 sets your profile's label in two passes: pass one reads each writing sample and returns a judgement, pass two synthesises those readings into one profile value. The nearest code count is a stand-in on ScriptGrain's homepage brand check, which counts subordinating words per 100 words; that is a different unit, and it never becomes the stored label.

Sentence complexity does move the voice match score, at a weight of 1. Claude Haiku judges the complexity label of a fresh draft, and code compares it with your stored profile value. An exact match scores 1. If either side is "mixed" or "varied", you get 0.7. If your profile value contains the draft's label, that's 0.9. Anything else scores 0.15. So the penalty for a mismatch is steep, but "mixed" gives you room to breathe on either side.

For the full mechanics of how these judgements and comparisons combine into one score, see the voice measurement framework and the voice match explainer.

How to analyse sentence complexity in your own writing

Analysing sentence complexity by hand takes a page of your own writing and about ten minutes.

  1. Pull a sample of at least a few hundred words, ideally something you wrote naturally, not edited to death.
  2. Go sentence by sentence and mark each one: does it have one main clause (simple), two joined by "and", "but" or "so" (compound), or a main clause plus a dependent one flagged by "because", "although", "which", "since" or similar (complex)?
  3. Count the totals. If most sentences fall into one bucket, that's your lean. If they're spread across two or three, you're mixed.
  4. Check for subordinating words specifically: "which", "that", "because", "although", "though", "while", "whereas", "since", "unless", "whether", "after", "before", "if". These are the tell for complex construction; ScriptGrain's homepage brand check counts them per 100 words and calls more than 4 "Heavy subordination".
  5. Repeat with a different piece of your writing. Style shifts by context, so one sample rarely tells the whole story.

That's the manual version. ScriptGrain's free voice profile reads sentence complexity from a writing sample as one of 45 attributes, alongside everything from pronoun mix to punctuation habits.

Examples of sentence complexity in real writing

Real writing rarely commits to one mode for long, but individual sentences show the pattern clearly.

Example: "The report was late." That's simple: one clause, no joins, no subordination.

Example: "The report was late, and nobody flagged it." That's compound: two main clauses joined by "and".

Example: "The report was late because the data team missed their deadline, which nobody escalated." That's complex: a main clause carrying two subordinate ones, stacked.

Plenty of writing mixes all three. Short sentences land a point. Compound ones keep momentum. Complex ones carry nuance without breaking flow, when they're not overused.

How to make AI write more complex sentences

Making AI write more complex sentences means asking it to carry qualification inside the sentence rather than spreading it across several.

  1. Ask the model to let subordinate clauses do the work: "because", "although", "which" clauses that fold a reason or exception into the main sentence rather than bolting it on afterward.
  2. Ask it to combine short, closely linked sentences into one. Two sentences that share a subject or a cause-and-effect relationship usually collapse into one complex sentence cleanly.
  3. Keep the main clause early in the sentence. Longer sentences stay readable when the reader gets the point first and the qualification after, rather than the other way round.

A ScriptGrain profile applies this by sending your `complexity_preference` value inside the voice profile JSON in the system prompt, marked as a hard constraint rather than a suggestion. The named rule is blunt: match sentence rhythm, length variance and complexity exactly. Choose the Formal register and the instruction goes further: "Use longer, more structured sentences". The profile, complexity preference included, reaches ChatGPT, Claude and other tools through the API and MCP server.

How to make AI write simpler sentences

Making AI write simpler sentences means giving every qualification its own sentence instead of folding it into one.

  1. Instruct one main clause per sentence. No exceptions, no stacking.
  2. Give each qualification its own sentence rather than attaching it with a comma or a conjunction.
  3. Replace "which" and "although" clauses with a full stop and a new sentence. Split, don't subordinate.
  4. Ban stacked subordinate clauses outright. If a sentence has two "because"s or a "which" inside a "that", that's a rewrite.

A ScriptGrain profile labelled "simple" goes into the same system prompt under the same rule, so every draft starts from it without a follow-up prompt. The profile reaches ChatGPT, Claude and other tools through the API and MCP server.

Questions

How is sentence complexity scored?

It's judged, not counted. Claude Sonnet 5 reads your writing samples across two passes and settles on one of four labels: simple, compound, complex or mixed. In voice match, at weight 1, Claude Haiku judges the label of a fresh draft and code compares it with your profile: an exact match scores 1, "mixed" on either side 0.7, a profile value containing the draft's label 0.9, and anything else 0.15.

How do I use a simple compound complex sentence checker?

Read your writing sentence by sentence and classify each one by clause count and structure: one clause is simple, two joined clauses is compound, a main clause plus a dependent one is complex. Watch for subordinating words like "because", "which" and "although" as the marker of complex construction. A ScriptGrain voice profile does this reading for you, judging the pattern across a whole sample as one of 45 attributes.

How do I make AI write simpler sentences?

Tell it plainly: one main clause per sentence, one qualification per sentence, no exceptions. Ask it to replace "which" and "although" clauses with full stops and new sentences, and ban stacked subordinate clauses outright. A ScriptGrain profile labelled "simple" sends that label as a hard constraint on every ScriptGrain draft, and the profile reaches ChatGPT, Claude and other tools through the API and MCP server.

How do I make ChatGPT use less complex sentences?

Same approach as any model: ask for one clause per sentence and separate qualifications into their own sentences rather than joining them with "because" or "which". If your ScriptGrain profile's complexity_preference is simple, ChatGPT can read that value through ScriptGrain's MCP server, and drafts ScriptGrain writes from the profile treat it as a hard constraint.

How do I make AI writing more sophisticated?

Sophistication in sentence terms usually means complex structure: subordinate clauses carrying qualification inside the sentence rather than as separate statements, and short related sentences combined into longer ones with the main clause kept early. Longer words are a separate matter; the test is how much a single sentence can carry cleanly. Keep some simple sentences too, so the complex ones have something to stand against.

Related

Sources