# Write BSV amounts, units and interface copy: every rule

Every do and don't the guide states on the pages behind this skill. The costly ones come first; the full list follows, grouped by page. Quote them; do not paraphrase them.

50 rules: 2 that can cost money, 9 that can cost trust, 39 standard.

## Start here

- **DON'T** _(Costs money)_ Show long decimal BSV amounts in a consumer interface. "0.00012500 BSV" asks the reader to count zeros, and they will get it wrong.
  <https://www.bitcoinsv.design/guide/rule/5fe9c5b068/>
- **DON'T** _(Costs money)_ Shorten an address with an ellipsis where somebody is checking it. Middle elision is acceptable in a list row, never on a confirmation.
  <https://www.bitcoinsv.design/guide/rule/0b9964e35a/>
- **DO** _(Costs trust)_ Use Bitcoin SV or BSV on screen: "Send BSV", "Your BSV balance", "Bitcoin SV address". Use one of the two consistently within a screen.
  <https://www.bitcoinsv.design/guide/rule/4e724b402c/>
- **DON'T** _(Costs trust)_ Write "bitcoin" alone on a screen where somebody is about to move money. Used precisely it is an umbrella covering several chains, so it is the one word that cannot tell a user which network they are on. See Bitcoin.
  <https://www.bitcoinsv.design/guide/rule/ff7e7b18ab/>
- **DO** _(Costs trust)_ Say when a converted figure is an estimate, and roughly how fresh the rate is. A price that silently drifts is worse than one labelled approximate.
  <https://www.bitcoinsv.design/guide/rule/ab0796fbfa/>
- **DO** _(Costs trust)_ Keep one bitcoin unit per screen. Mixing "0.0001 BSV" and "10,000 sats" in one view asks the user to do arithmetic to compare two things you wrote.
  <https://www.bitcoinsv.design/guide/rule/19ba942704/>
- **DON'T** _(Costs trust)_ Abbreviate amounts in a financial context. "12.5k sats" saves four characters and introduces a rounding question.
  <https://www.bitcoinsv.design/guide/rule/e8d6661969/>
- **DON'T** _(Costs trust)_ Shorten a number with an ellipsis, ever. Reformat it or let it wrap.
  <https://www.bitcoinsv.design/guide/rule/28ab6b7ed7/>
- **DON'T** _(Costs trust)_ Keep a fee picker because the design system already has one. It asks the user a question with no wrong answer, which teaches them that your questions are decorative.
  <https://www.bitcoinsv.design/guide/rule/5d31c5cfd7/>
- **DO** _(Costs trust)_ Leave the fee off the review screen entirely for ordinary payments, and put it in the transaction details afterwards for anyone who looks.
  <https://www.bitcoinsv.design/guide/rule/8223d8056e/>
- **DO** _(Costs trust)_ Validate as it is entered, and disable sending until it passes.
  <https://www.bitcoinsv.design/guide/rule/3453bd7d1f/>

## Every rule, by page

### Amounts and units

https://www.bitcoinsv.design/guide/patterns/amounts-and-units/

- **DO** Default to satoshis, not BSV, for the bitcoin figure. Everyday amounts are hundreds or thousands of satoshis, and the decimal form is unreadable at that scale.
  <https://www.bitcoinsv.design/guide/rule/7109c0692f/>
- **DO** Write "sats" or "satoshis" in words, and group digits in threes: 12,500 sats.
  <https://www.bitcoinsv.design/guide/rule/cb0ea7723f/>
- **DON'T** _(Costs money)_ Show long decimal BSV amounts in a consumer interface. "0.00012500 BSV" asks the reader to count zeros, and they will get it wrong.
  <https://www.bitcoinsv.design/guide/rule/5fe9c5b068/>
- **DON'T** Adopt a satoshi glyph. None renders reliably, none is in common fonts, and your users have not seen any of them.
  <https://www.bitcoinsv.design/guide/rule/0259e17026/>
- **DO** _(Costs trust)_ Use Bitcoin SV or BSV on screen: "Send BSV", "Your BSV balance", "Bitcoin SV address". Use one of the two consistently within a screen.
  <https://www.bitcoinsv.design/guide/rule/4e724b402c/>
- **DO** Prefer "Bitcoin SV" where there is room and the reader may be new to it, "BSV" where space is tight or the term repeats in a list.
  <https://www.bitcoinsv.design/guide/rule/3c14de2099/>
- **DON'T** _(Costs trust)_ Write "bitcoin" alone on a screen where somebody is about to move money. Used precisely it is an umbrella covering several chains, so it is the one word that cannot tell a user which network they are on. See Bitcoin.
  <https://www.bitcoinsv.design/guide/rule/ff7e7b18ab/>
- **DO** Lead with local currency for anything a person chooses to buy, with the satoshi amount beside it: "£12.00 (24,000 sats)".
  <https://www.bitcoinsv.design/guide/rule/3efb93cfc2/>
- **DO** Lead with satoshis for figures software decides or enforces, such as allowance limits, what is left of an allowance and agent budgets, with local currency beside them.
  <https://www.bitcoinsv.design/guide/rule/4db298dc64/>
- **DO** Let the two be swapped in one tap, and remember the choice.
  <https://www.bitcoinsv.design/guide/rule/ee876b1dbf/>
- **DO** _(Costs trust)_ Say when a converted figure is an estimate, and roughly how fresh the rate is. A price that silently drifts is worse than one labelled approximate.
  <https://www.bitcoinsv.design/guide/rule/ab0796fbfa/>
- **DO** Use tabular figures (tabular-nums in CSS) everywhere a figure appears, so digits line up in a column and a changing balance does not shift the layout.
  <https://www.bitcoinsv.design/guide/rule/052b376429/>
- **DO** Format for the reader's locale. 1,200 and 1.200 and 1 200 are the same number to three different people and three different numbers to one of them.
  <https://www.bitcoinsv.design/guide/rule/a50eb4bb1f/>
- **DO** _(Costs trust)_ Keep one bitcoin unit per screen. Mixing "0.0001 BSV" and "10,000 sats" in one view asks the user to do arithmetic to compare two things you wrote.
  <https://www.bitcoinsv.design/guide/rule/19ba942704/>
- **DON'T** _(Costs trust)_ Abbreviate amounts in a financial context. "12.5k sats" saves four characters and introduces a rounding question.
  <https://www.bitcoinsv.design/guide/rule/e8d6661969/>
- **DON'T** _(Costs trust)_ Shorten a number with an ellipsis, ever. Reformat it or let it wrap.
  <https://www.bitcoinsv.design/guide/rule/28ab6b7ed7/>
- **DO** Leave the fee off the review screen and put it in the transaction details. If it is shown, show it in local currency: "Fee: less than 1p".
  <https://www.bitcoinsv.design/guide/rule/848ac6bb53/>
- **DO** Show the individual amount where it happens and the aggregate where the user is deciding something. "About 1p (20 sats)" on the article, "940 sats (about 47p) today" in the allowance summary.
  <https://www.bitcoinsv.design/guide/rule/fb1efa5b2d/>
- **DO** Round aggregates to a sensible precision in local currency. "About 24p today" is more useful than "£0.2384".
  <https://www.bitcoinsv.design/guide/rule/62d7f58727/>
- **DO** Make sure an amount reads correctly aloud. A screen reader should say "twelve thousand five hundred satoshis", which means the unit needs to be text rather than an image or an unlabelled glyph.
  <https://www.bitcoinsv.design/guide/rule/3873d5026d/>
- **DO** Never rely on colour alone to show direction. Pair the colour with a sign or a word.
  <https://www.bitcoinsv.design/guide/rule/8d1e3f0487/>

### Send fees

https://www.bitcoinsv.design/guide/daily-spending-wallet/sending/send-fees/

- **DON'T** _(Costs trust)_ Keep a fee picker because the design system already has one. It asks the user a question with no wrong answer, which teaches them that your questions are decorative.
  <https://www.bitcoinsv.design/guide/rule/5d31c5cfd7/>
- **DO** _(Costs trust)_ Leave the fee off the review screen entirely for ordinary payments, and put it in the transaction details afterwards for anyone who looks.
  <https://www.bitcoinsv.design/guide/rule/8223d8056e/>
- **DO** In the payment's details, show the fee in local currency as one small line: "Fee: less than 1p". A figure in satoshis invites arithmetic nobody wanted to do.
  <https://www.bitcoinsv.design/guide/rule/38e0a0da8b/>
- **DON'T** Explain the fee model. A user who wanted to know about satoshis per byte will find it in the transaction details.
  <https://www.bitcoinsv.design/guide/rule/022b63ad54/>
- **DO** Pay the fee on the user's behalf where the product can, and do not mention it. We suggest a shop absorb it as a cost of sale and an app fold it into its price. It is a real option because the fee is smaller than any price the user will see.
  <https://www.bitcoinsv.design/guide/rule/67836d2509/>

### Visual language

https://www.bitcoinsv.design/guide/getting-started/visual-language/

- **DO** Use the BSV mark, the upright B on gold, wherever a BSV product needs the symbol as a mark.
  <https://www.bitcoinsv.design/guide/rule/fe64509ecb/>
- **DON'T** Use the orange disc or a tilted B to stand for BSV. Both say a different network to anyone who knows the difference.
  <https://www.bitcoinsv.design/guide/rule/349de561b7/>
- **DO** Use the Unicode character ₿, not the logo, when you need the bitcoin symbol in text. It scales, reflows and can be read by a screen reader. For amounts and labels, use sats and BSV; see Amounts and units.
  <https://www.bitcoinsv.design/guide/rule/3da32ce0ba/>
- **DON'T** Use the golden disc logo inside a sentence. It is a mark, not a letterform, and at text size it is a smudge.
  <https://www.bitcoinsv.design/guide/rule/2e80a24df0/>
- **DON'T** Put memes in a product. They read as a private joke to people inside and as unseriousness to people outside, and the second group is who you are trying to reach.
  <https://www.bitcoinsv.design/guide/rule/48418fbe04/>
- **DO** Draw the thing that is happening. A payment is a person handing something to a person.
  <https://www.bitcoinsv.design/guide/rule/6200916e40/>
- **DO** Pick a point on the scale deliberately and hold it across the product. Drifting between the two is what produces an app that is baffling to newcomers and patronising to everyone else.
  <https://www.bitcoinsv.design/guide/rule/d3b7b38cd3/>
- **DON'T** Use a lightning bolt to mean speed in a BSV product. Show the thing itself: a payment confirmed while the customer is still at the till.
  <https://www.bitcoinsv.design/guide/rule/8aabfb2d4b/>
- **DON'T** Put advocacy in a product. Say what yours does and let it be judged on that.
  <https://www.bitcoinsv.design/guide/rule/69599bcb85/>
- **DO** Reach for the gold metaphor on a savings surface and leave it off an everyday one. A payment app that looks like a vault tells people their coffee money is an investment.
  <https://www.bitcoinsv.design/guide/rule/4f51bc1620/>

### Address

https://www.bitcoinsv.design/guide/glossary/address/

- **DO** Make the handle the thing a user shares. Put the address behind a "Show address" control for the cases that need one.
  <https://www.bitcoinsv.design/guide/rule/306b5c235f/>
- **DON'T** Lead a receive screen with an address. It is the least usable identifier you have and it is almost never the one the payer needs.
  <https://www.bitcoinsv.design/guide/rule/34757909ec/>
- **DON'T** Show change as a transaction, a second recipient, or a separate line in a balance. It is the most common way to make a wallet look wrong when it is right.
  <https://www.bitcoinsv.design/guide/rule/a3c45dffa5/>
- **DO** Use a monospace face whose characters are clearly distinguishable, such as Source Code Pro or Fira Mono. Base58 excludes 0, O, I and l for this reason, so do not fight it with an ambiguous font.
  <https://www.bitcoinsv.design/guide/rule/9239b8f3c7/>
- **DO** Group it into chunks of four characters, and offer a large, expanded view. People compare in chunks and cannot compare a 34-character run.
  <https://www.bitcoinsv.design/guide/rule/1047e774e6/>
- **DON'T** _(Costs money)_ Shorten an address with an ellipsis where somebody is checking it. Middle elision is acceptable in a list row, never on a confirmation.
  <https://www.bitcoinsv.design/guide/rule/0b9964e35a/>
- **DO** _(Costs trust)_ Validate as it is entered, and disable sending until it passes.
  <https://www.bitcoinsv.design/guide/rule/3453bd7d1f/>
- **DO** Derive a fresh output for every payment. The peer-to-peer flow does this without the user knowing, which is the right amount of knowing.
  <https://www.bitcoinsv.design/guide/rule/74a675d05c/>
- **DO** Where a user deliberately publishes a fixed address, such as a donation page, say what it costs them in a sentence rather than preventing it.
  <https://www.bitcoinsv.design/guide/rule/94f346f87a/>

### Wallet

https://www.bitcoinsv.design/guide/glossary/wallet/

- **DO** Decide which sense you mean before writing the screen. "Create a wallet" and "Connect your wallet" are different enough that a user who confuses them will do the wrong thing.
  <https://www.bitcoinsv.design/guide/rule/727998da79/>
- **DO** Leave key derivation out of the interface. A user never needs the word "derivation"; they need to know that one backup covers everything.
  <https://www.bitcoinsv.design/guide/rule/7a04d94956/>
- **DON'T** Call this "a BRC-100 wallet". The number names a document, not a product. In an interface the string is Connect wallet.
  <https://www.bitcoinsv.design/guide/rule/17ff8e86dc/>
- **DO** Say which one you are, in plain words, before the user has anything to lose. "We cannot reset this for you" is the sentence that matters, not the word "non-custodial".
  <https://www.bitcoinsv.design/guide/rule/cb0ed92d71/>
- **DON'T** Use "account" for the thing a user signs into. If your product has both, one of them needs a different word.
  <https://www.bitcoinsv.design/guide/rule/c010a8c23f/>
