Copy standards

Copy standards — Intrinsic Value

Voice is part of the design system. Tokens make UI consistent; these rules make language consistent.

Philosophy: WRITING_PHILOSOPHY.md (Zinsser · Segall · Buffett · Strunk) · Trust: TRUST_COPY.md · Audit: REVIEW_PASSES.md


Tone

AttributeDoDon't
ClarityOne idea per sentenceJargon stacks, hedge words
ConfidenceState what happened + next step"Oops!", "Uh oh", fake friendliness
RespectUser agency, opt-inGuilt, urgency, dark patterns
BrevityShort labels; details on tapWall-of-text errors
FocusOne job per surface; one primary CTA (Segall)Competing hero messages, feature laundry lists

Typography roles: footnote, caption, label in tokens/foundation.jsonpatterns/TYPOGRAPHY.md.

Ethics: tasteful docs/FOUNDATION/ETHICAL_BOUNDARIES.md (reference in consumer repos).


Strunk mechanics (every string)

RuleExample
Omit needless words"Add a meal" not "Start tracking your meals by adding your first one"
Active voice"Meal saved." not "Your meal has been successfully saved"
Positive form"Add a few meals first" not "Nothing to suggest yet"
Concrete nouns"Recipe" not "content asset"
One CTAOne primary action per empty state

Word budgets (targets)

SurfaceTarget
Button≤ 4 words when possible
Alert title≤ 6 words
Empty state title≤ 4 words
Empty state body≤ 120 characters
Email subject≤ 50 characters

Error messages (shape)

Every error users see:

  1. What happened (plain language)
  2. What they can do (one action)
Couldn't sync meals. They're still on this phone. Try again when you're online.

Not: Error 503: upstream unavailable · Something went wrong


Success messages

Past tense. Specific. No exclamation spam.

Meal saved.
Recipe imported.

Not: Successfully saved! · Great job!


Banned in user-facing copy

BanUse instead
Oops / Uh oh / Something went wrong"That didn't work" / "Couldn't …"
Successfully (in UI)(omit) or past tense verb alone
Intelligent / smart (marketing)(omit) or "from your history"
Personalized / personalization"from what you've saved"
Powered by / AI-powered(omit) or name vendor only if required
Seamless / curated / journeyPlain verb
Recommendation engine"Suggestions" / "meal ideas"
Start tracking"Add a meal"
Limited time / Act now(omit)
Upgrade now or lose…Honest feature description
Operator (Keystone)Admin
360 / customer 360User detail page
Users (ambiguous Keystone list)People

Product-specific bans: products/<app>.md


Links


Localization


Product voice sheets

ProductSheet
Tastefulproducts/tasteful.md
Keystoneproducts/keystone.md

Domain terms: ENTITY_NAMES.md + product sheet.


iOS capitalization

ElementCase
Buttons, toolbar actionsTitle Case (patterns/PRIMARY_ACTION.md)
Body, footers, alert messagesSentence case
Section headers (Settings)Title Case (system default)

Ship gate

See REVIEW_PASSES.md PR checklist.