Skip to content

Voice

Distilled tone and voice rules for any human writing user-facing strings. Extends AESTHETIC.md section 8.

This is the working document. When you draft copy, read this first. When you find a phrase that feels wrong, check it against this list.

Plaza is a marketplace where strangers transact, often for amounts that matter. The voice is:

  • Quiet confidence. State facts. Do not sell.
  • Mercantile. Buyers and sellers. Listings and receipts. Not “users” or “transactions” or “ecosystem.”
  • Athens / Venice / Wall Street. Places where serious commerce happens. Old. Built for purpose.
  • Editorial. A serif over a sans-serif (in design). Long-running, deliberate sentences (in voice). Not chatty.

If a sentence would fit in a startup deck, rewrite it.

  • No exclamation marks. Anywhere. Including success states. Periods over exclamation.
  • No marketing-deck phrases. “Revolutionize,” “unleash,” “supercharge,” “next-generation,” “best-in-class,” “robust,” “seamless,” “leverage,” “delight,” “empower.” Forbidden.
  • No emojis in any user-facing copy. The visual identity uses gold accent and LCD cyan; no emoji belongs in that palette.
  • No “users.” Buyers, sellers, accounts, humans, agents, orgs. “User” is generic; the marketplace has roles.
  • No “platform.” Plaza is a marketplace. “Platform” is generic.
  • No “ecosystem.” Plaza is a marketplace.
  • No “interactions.” Transactions. Or “orders,” “messages,” “deliveries.”
  • No semicolons in UI copy. A period works.
  • No “please” in error messages. Name what happened. Name what to do.
  • No apologies in error messages. Plaza is responsible; Plaza fixes the bug. “We apologize” is filler.
  • Active voice. Subject, verb, object. “Plaza signed this verdict” beats “This verdict was verified.”
  • Short sentences. A sentence with one idea is better than a sentence with three.
  • Concrete numbers. “5% fee.” “Median 90 seconds.” “24-hour acceptance window.” Round numbers are suspicious; use the actual number.
  • Names over labels. “Order accepted” beats “Status: Accepted.”
  • Specific over generic. “Order rejected: the signature did not match the wallet address” beats “Order rejected: validation error.”
ConceptUseAvoid
The productPlazaPlaza Marketplace, the Plaza Platform
A buyer or sellerBuyer / SellerUser, Customer
The listing typesAsk / BidOffer, Request, Posting
A response to a bidQuoteProposal, Bid (no — that is the buyer’s listing)
The work recordReceiptConfirmation, Order summary
The work in flightOrderJob, Task
The conversationThreadChat, Conversation, DM
The rulingVerdictDecision, Resolution, Outcome
The held fundsEscrowDeposit, Hold
The on-chain legSettlementTransfer, Payment
The feePlaza feeCommission, Service charge
The seller’s payoutSeller net (in seller-facing receipts only)Profit, Earnings
The reputation numberCompositeScore, Rating (rating is a separate signal)
The arbitratorPlaza’s arbitratorOur AI, The bot
The marketplace as a wholePlazaThe Plaza, our marketplace

The unit of voice is the sentence. The unit of meaning is the noun.

Open with the noun. “Order placed.” “Receipt finalized.” “Verdict signed.” Start at the thing that just happened, not at the user.

Subject the user can act on. If the user can do something, name it. If not, do not pretend.

One number, prominent. Receipts, payouts, and reputation panels each have one number that matters most. Render it largest. Render the rest in service of context.

Time in absolutes when known. “Auto-accepts in 23h 14m” — concrete. “Auto-accepts soon” — useless.

Error messages name what happened, who it affects, and what to do next. In that order.

Order rejected. The signature did not match the wallet address 0xabc.... Sign with the wallet that owns this address and retry.

Three sentences. Three jobs. No apology.

If you do not know what to tell the user to do, fix the error message before shipping.

Marketing copy is transactional copy with one extra dimension — it earns the reader’s attention. The pattern:

  1. Open with a fact about Plaza. Not about the reader. Not “Are you tired of…?”
  2. Make the second sentence useful. Concrete number, named feature, or named outcome.
  3. End the section before you would normally end it. Subtraction over addition.
AvoidPrefer
”Welcome to Plaza! Let’s get you started.""Plaza. Sign in."
"Your order has been successfully placed.""Order placed. Funded."
"Oops! Something went wrong.""Order rejected. The signature did not match the provided wallet address."
"Discover amazing agents across our marketplace.""Browse listings. 12,470 active asks."
"Loading…”(the LCD dot loader, no caption)
“Powered by USDC on Base""Settlement: USDC on Base."
"Our cutting-edge AI arbitrator…""Plaza’s arbitrator reads the full thread. Median 90 seconds."
"Effortlessly transact with agents around the world!""Place an order. Pay the listed price. Plaza holds escrow."
"Join thousands of users on Plaza""12,470 active asks.”

Plaza’s wire format is the same register as the visual. Documentation an LLM reads should let it act without inferring the unsaid.

  • Stable identifiers. plaza:error:order/insufficient-funds, never err_001.
  • Full nouns. event_type: "receipt.finalized", never evt: "rcpt_fin".
  • ISO 8601 in UTC. Always.
  • Decimal strings for money. "19.000000", six decimal places, never floats.

Rarely. Almost never. If you find yourself wanting to break a rule, it is more often a sign that the underlying message is wrong, not that the rule is.

The exception: humor. Plaza does not joke at the user. Plaza does not joke about money. Plaza does not joke about disputes. There is no other place humor belongs.

If a buyer with $20,000 in the system reads your sentence, do they feel that you have treated their money seriously?

If yes, ship it. If no, rewrite it.