# Removing Em-Dashes from Prose: Alternatives and Implementation in Stop-Slop

> Eliminate em-dashes from AI prose with Stop-Slop. Learn alternative punctuation like commas and semicolons for clearer, predictable syntax. Improve your writing now.

- Repository: [Hardik Pandya/stop-slop](https://github.com/hardikpandya/stop-slop)
- Tags: how-to-guide
- Published: 2026-05-26

---

**Remove em-dashes from AI-generated prose to eliminate predictable punctuation patterns and enforce clearer syntax using commas, periods, or semicolons instead.**

The **Stop-Slop** skill is a collection of editorial rules designed to strip predictable AI "tells" from text. According to the source code in `hardikpandya/stop-slop`, removing em-dashes is a core requirement for producing human-like writing that avoids formulaic rhythms.

## Why Remove Em-Dashes? The Core Rationale

The Stop-Slop skill treats em-dashes as a stylistic crutch that signals machine-generated text. According to [`SKILL.md`](https://github.com/hardikpandya/stop-slop/blob/main/SKILL.md) and [`references/structures.md`](https://github.com/hardikpandya/stop-slop/blob/main/references/structures.md), the reasoning follows four specific principles:

- **Predictability** — Em-dashes create visual cues that signal pauses or asides. AI models frequently lean on this punctuation to mimic human "thought trails," creating recognizable patterns that readers associate with synthetic text.

- **Clarity and Flow** — Overuse fragments sentences into "staccato" rhythms. By banning em-dashes, the skill forces writers to construct natural clause structures that improve readability.

- **Consistency** — Enforcing a single punctuation style reduces variation that AI models exploit to produce formulaic outputs.

- **Simplification for LLMs** — When supplied as a system prompt, fewer punctuation tokens mean the model has less room to hide filler behind complex punctuation flourishes.

In [`SKILL.md`](https://github.com/hardikpandya/stop-slop/blob/main/SKILL.md), **Rule 6 – Vary rhythm** explicitly states: "No em dashes." The [`references/structures.md`](https://github.com/hardikpandya/stop-slop/blob/main/references/structures.md) file expands this under **Rule 25 – Rhythm Patterns**: "Em-dashes – Remove. Use commas or periods. No em dashes at all."

## Alternatives to Em-Dashes in Prose

When removing em-dashes from prose, the Stop-Slop skill recommends specific substitutions based on the grammatical function of the original dash:

**Independent clause separation** — Replace em-dashes separating two standalone thoughts with a period or semicolon.

```

Original: "Speed, quality, cost—pick two."
Revised:  "Speed, quality, cost. Pick two."

```

**Cause-and-effect linking** — Substitute conjunctions or semicolons when the dash implies a relationship between statements.

```

Original: "The data tells us—our users love it."
Revised:  "The data tells us; our users love it."

```

**Justification clauses** — Rewrite as a single sentence with explicit connecting words.

```

Original: "We must act now—there's no time to waste."
Revised:  "We must act now because there's no time to waste."

```

**Afterthoughts** — Use periods for emphasis or parentheses for incidental information.

```

Original: "He was late—again."
Revised:  "He was late (again)."

```

**Modifier lists** — Convert to comma-separated lists without the dash.

```

Original: "She smiled—softly, sincerely."
Revised:  "She smiled softly, sincerely."

```

These alternatives align with the principle in [`references/structures.md`](https://github.com/hardikpandya/stop-slop/blob/main/references/structures.md) lines 118-126: prefer direct statements over punctuation-driven flourishes.

## Implementation: Applying the Stop-Slop Rule

To enforce the em-dash prohibition programmatically or via prompt engineering, reference the specific rule locations in the repository.

When using Claude or similar LLMs, include the skill rules in the system prompt:

```python
system_prompt = """
You are Claude. Apply the Stop-Slop skill rules (see SKILL.md) to the user text.
Rules include:
- Rule 6 (SKILL.md): No em dashes
- Rule 25 (references/structures.md): Em-dashes – Remove. Use commas or periods.
"""

user_text = "The solution is simple—just restart the server."

# Expected transformation:

# "The solution is simple. Just restart the server."

```

For manual editing, scan for the Unicode character `—` (em-dash) or double hyphens `--` and apply the substitution patterns above based on sentence structure.

## Source Files and Rule Locations

The em-dash prohibition is documented across several files in the repository:

- **[`SKILL.md`](https://github.com/hardikpandya/stop-slop/blob/main/SKILL.md)** — Contains **Rule 6 – Vary rhythm** with the flat prohibition "No em dashes" at lines 26-27.

- **[`references/structures.md`](https://github.com/hardikpandya/stop-slop/blob/main/references/structures.md)** — Contains **Rule 25 – Rhythm Patterns** with detailed removal instructions and alternatives at lines 118-126.

- **[`README.md`](https://github.com/hardikpandya/stop-slop/blob/main/README.md)** — Provides high-level overview of the skill's goals, including em-dash removal as part of the anti-slop methodology.

- **[`references/examples.md`](https://github.com/hardikpandya/stop-slop/blob/main/references/examples.md)** — Shows before-and-after transformations illustrating how em-dashes are removed in practice.

## Summary

- The Stop-Slop skill bans em-dashes in [`SKILL.md`](https://github.com/hardikpandya/stop-slop/blob/main/SKILL.md) Rule 6 and [`references/structures.md`](https://github.com/hardikpandya/stop-slop/blob/main/references/structures.md) Rule 25 to prevent predictable AI punctuation patterns.
- **Key alternatives** include periods for sentence breaks, semicolons for related clauses, and conjunctions for explicit logical connections.
- Removing em-dashes forces clearer sentence architecture and eliminates the "staccato" rhythm common in synthetic text.
- Implementation requires either manual substitution based on grammatical context or automated filtering via system prompts referencing the skill rules.

## Frequently Asked Questions

### What is the Stop-Slop skill?

The Stop-Slop skill is a system prompt framework hosted in the `hardikpandya/stop-slop` repository that defines editorial rules for identifying and removing AI-generated text patterns. It provides specific constraints on vocabulary, sentence structure, and punctuation—including the complete prohibition of em-dashes—to produce more naturalistic prose.

### Why are em-dashes considered an "AI tell"?

Em-dashes are considered an AI tell because large language models frequently use them to simulate human speech patterns and abrupt thought transitions. According to the Stop-Slop source code in [`references/structures.md`](https://github.com/hardikpandya/stop-slop/blob/main/references/structures.md), this creates a recognizable visual rhythm that signals formulaic generation rather than deliberate human craft.

### Can I use en-dashes or hyphens instead of em-dashes?

The Stop-Slop rules specifically target the em-dash character (`—`). While the repository does not explicitly ban en-dashes or hyphens, the **Rule 25** guidance in [`references/structures.md`](https://github.com/hardikpandya/stop-slop/blob/main/references/structures.md) emphasizes replacing em-dash functions with commas or periods rather than substituting alternative dash characters. The goal is structural clarity, not merely character substitution.

### How do I detect em-dashes in existing text?

Search for the Unicode character U+2014 (—) or double hyphen sequences (--) depending on the source formatting. In [`references/structures.md`](https://github.com/hardikpandya/stop-slop/blob/main/references/structures.md), the skill treats both the visual em-dash and common typewriter approximations as violations requiring replacement with standard sentence punctuation.