Skip to content

Ditto sidebar experiment

Sticky case-study TOC inspired by Ditto. Scroll the column on the right; the active tile in the sidebar should track which block is in view and pick up its color.

Onboarding flow

# Welcome screen

Heading

Welcome aboard.

Subhead

Let's get you set up in just a few minutes.

Drafts

×
EditActivityCommentsVariants
Most recentSee all activity
  • Welcome screen v32m ago
  • Empty inbox1h ago
  • Plan upgrade modalYesterday

Draft copy in one place, and skip the spreadsheets, the Slack threads, the duplicated docs.

Components / Banner

# Promo banner

Save 20% on annual plans

Switch from monthly to annual and pay less.

Variables

{{discount}}{{plan}}

Linked components

×
EditActivityCommentsVariants
Most recentSee all activity
  • BillingPage.tsx
  • UpgradeBanner.tsx
  • EmailFooter.tsx

3 instances in design

Design with real strings, so the layout you ship matches the layout you reviewed.

Onboarding flow

# Notification frequency step

Notification frequency

Choose which notifications
you'd like to receive

  • Email updates
  • Product notifications
  • Comment responses
  • None of the above

Selected text

×
EditActivityCommentsVariants
Most recentSee all activity
L

Logan Smith· 20 mins ago

Suggested edit

Choose wWhich notifications would you'd like to receive?

Hide 2 replies

L

Logan Smith· 20 mins ago

Looks great 👍

B

Billie Johnson· 5 mins ago

Yes, this is better aligned to our style guide. Could we also include a subheading to clarify they can change this any time?

Review copy in context, and track every edit, comment, and approval.

String / Onboarding · welcome.return

Translation memory

LocaleStringStatus
ENWelcome back. Pick up where you left off.Source
ESBienvenido de nuevo. Continúa donde lo dejaste.Approved
JAおかえりなさい。続きからどうぞ。In review
FRBon retour. Reprenez là où vous vous êtes arrêté.Approved

Translate without losing nuance, human and machine translations side by side, ready for QA.

String / Homepage · hero.title

Variants

DefaultAll visitors

Welcome to Acme.

Draft

New visitorfirst_visit = true

Try us free for 14 days.

Live

Trial expiringtrial_days_left ≤ 2

Two days left. Upgrade to keep your work.

Live

Returning · EUregion = EU & last_seen > 7d

Welcome back. Resume your last project?

Draft

Personalize per audience, different copy for different markets, no rebuilds.

Branch · main

3 strings ready to publish

Update CTApricing.tsx

Get started

Try it free

Trim subheadsignup.tsx

It only takes a couple of minutes

Takes a minute

Fix typoemail/confirm.tsx

Recieve

Receive

Will sync to api.acme.com

Ship copy without a release, push updates straight to production from the editor.

Experiment · pricing.cta

Click-through over 14 days

v1 · control

"Get started"

3.2%

v2

"Try it free"

5.7%+78%

Winner promoted automatically. Past variants kept in history.

Iterate on what's live, watch impact, then refine. Copy is never done.