Sandboxes that convert: demo data done right
A founder once told us her product didn't need onboarding because "the demo environment does the talking." She was half right. Her demo environment was a logged-out marketing page and a fourteen-minute video. Nothing was doing any talking. Meanwhile a competitor with a genuinely worse product was converting trials at twice her rate, because you could click into their sandbox and find a fully furnished workspace with three months of plausible history, and within ninety seconds you understood what your life could look like inside it.
That gap — between software that's described and software that's inhabited — is what this piece is about. A sandbox with well-designed demo data is the highest-leverage onboarding surface most product teams never build, because it sits awkwardly between marketing, product and engineering, and each assumes another owns it. Here's how we design it when a squad is given the brief: the taxonomy that keeps the concept honest, the craft of fake data that teaches, the reset and graduation mechanics, and how to measure whether any of it converts.
Sandbox, trial, demo mode: pick your nouns carefully
Teams use "sandbox," "demo," and "trial" interchangeably, and the sloppiness leaks into the product. Each makes a different promise:
- A trial is the real product with a clock. Real data, real side effects (emails send, cards get charged at the end), real risk. Trials answer "does this fit my life?" but they answer it slowly, because the user starts from an empty room.
- A demo mode is the real product with fake data injected into your account. It usually appears as a "load sample data" button or a tour. It's cheap to build and quietly poisonous when done badly, because fake data mixed into a real workspace is hard to remove and hard to trust.
- A sandbox is a parallel environment — clearly labelled, clearly disposable, seeded with believable data — that a user can explore with zero consequences and exit back to reality at any moment.
The conversion-relevant difference is consequence. In a trial, every serious action has a cost attached to it (importing your real data, inviting your boss, connecting your bank). In a sandbox, nothing counts, so people actually explore. Exploration is what produces the "oh, that's what this does" moment — the one your activation metric is supposed to capture. If your aha-moment requires importing real data before it can happen, your trial is asking for trust it hasn't earned yet.
Our default architecture for products with a non-trivial data model: a pre-seeded sandbox you can enter before signup (or immediately after, one click, no form), a real workspace you graduate into, and a clean bridge between them. What we deliberately avoid is demo data inside the real workspace — the blend. Blends force users to play archaeologist ("is this my invoice or a fake one?") and make the eventual cleanup your problem forever.
Designing demo data that teaches
Bad sample data is a casting failure. Everyone's seen it: "Test Project 1", "John Doe", a chart of random walk noise, a customer list of superheroes. It fails twice over — it teaches nothing about the product and it has no transfer to the user's situation, so the "aha" stays abstract. Good demo data is a narrative with rough edges. The principles we hand to squads:
Cast a believable tenant. The sandbox belongs to a fictional company plausibly similar to the target customer. Selling a budgeting tool to finance leads? The sandbox is "Oakfield Provender Co.", a 40-person food distributor — not "Acme Corp." Every widget the user opens should be answerable with a story: these are Oakfield's numbers. We did this in our own lab for the Northwind Ledger budgeting demo — the accounts, the categories and the seasonal shape of the cash flow all belong to one coherent small business, and the backstory is half of what makes the charts legible.
Include history, not just state. A dashboard with data is furniture; a dashboard with time is a tool. Seed six to thirteen months of activity so trends, comparisons and seasonality exist. A person evaluating your product wants to see the feature that made them sign up — usually the thing that only shows up over time.
Seed the interesting 20%, including the mess. Real accounts contain an overdue invoice, a miscategorised expense, a team member who never accepted their invite, an anomaly the product is designed to surface. Curated perfection hides the product's value: a reporting tool whose sample data has no outliers demos its charts but not its point. Seed one or two deliberately discoverable problems and let the product catch them. That's the demo selling the product, not the other way around.
Make volume honest. If the product's real users have 4,000 rows, the sandbox should paginate, search and filter like it has 4,000 rows. A five-item table hides every performance and information-density problem your product solved — and it hides them exactly from the person you're trying to convince.
Label it in the data itself. Names, avatars and domain strings should be self-evidently fictional on close reading (oakfieldprovender.example, staff named in a consistent fictional cast) so that if data ever escapes the sandbox — a screenshot, an export — nobody mistakes it for a breach.
The reset, and other disposable-furniture mechanics
A sandbox people are afraid to break is just a trial with worse data. The affordances that make it feel consequence-free:
- An obvious reset. A persistent, findable control: "Reset sandbox — restores the original Oakfield data." Destructive experiments are where learning happens; users who know they can restore the world will run them. Our standing rule, the same one from our piece on reversible software: the restore must be more discoverable than the danger.
- A labelled shell. A slim banner — not a nag — that says Sandbox · Oakfield Provender Co. · changes here affect nothing, with the graduate action one click away. The label is what licenses boldness.
- Muted side effects, visibly muted. If the product sends email, integrates with accounting software, or charges money, the sandbox versions are stubbed — and the stub is shown. "This would have emailed 3 customers" is both honest and a quiet feature demo. Silent stubbing creates a trust problem later ("did my real send work?"), so the sandbox should narrate what it suppressed.
- An empty state policy for sandbox-specific screens. When someone explores off the beaten path into a feature the seed data doesn't cover, the empty state should say so — "The Oakfield sandbox doesn't include payroll — here's what it looks like with real data" — rather than showing a blank room that reads as broken.
The swap-to-real moment
The entire exercise exists for one event: the user decides the sandbox describes a life they want, and moves to make it real. This transition is designed like a flow, not an afterthought, and it has three jobs.
Carry intent across. What the user did in the sandbox is the strongest signal you've ever had about what they value. If they spent twenty minutes in forecasting and never opened invoicing, the real workspace's onboarding checklist should start with "import your data to see your first forecast," not a generic tour. Persist sandbox activity (anonymised pre-signup) and use it to order the real onboarding.
Make the starting friction legible. The bridge should name the one thing the real workspace needs that the sandbox faked: usually data in, and people in. Present it as a continuation — "Make this yours" — not a new product that starts from zero. The emotional contract is: the room stays, we swap the furniture for yours.
Offer the sandbox back. Graduation isn't eviction. Keep "Return to sandbox" available for as long as the account exists; it's where users will rehearse scary real operations (a bulk import, a new integration) for the rest of their tenure. Teams that treat the sandbox as a top-of-funnel gimmick throw away its best long-term use: a rehearsal space for the customers they already have.
Measuring whether it converts
Sandbox conversion is measurable if you resist vanity metrics. What we track, in order of importance:
- Sandbox-to-signup (or sandbox-to-activation) rate — the headline. Segment by entry point; sandboxes linked from pricing pages convert differently to ones linked from ads.
- Depth of exploration before signup — features touched, not pages viewed. Users who trigger the sandbox's seeded "interesting moment" (found the anomaly, ran the report) should convert materially higher. If they don't, either the moment isn't compelling or your measurement is wrong — both worth knowing.
- Reset usage — a health metric. Some resets are engagement; resets clustered in the first three minutes usually mean the entry state confused people.
- Time from sandbox entry to first meaningful action — if this exceeds a couple of minutes the seed narrative is failing to orient people.
None of this needs exotic tooling, but it does need the discipline of a tracking plan — the same argument we make in analytics governance: name the events before you build the sandbox, or you'll retrofit instrumentation onto feelings.
What it costs, honestly
A good sandbox is not free. Seed data needs maintenance as the schema evolves (treat it as code, with fixtures under test, or it rots within two releases). Sandbox-suppressed side effects need an explicit stub layer. And pre-signup sandboxes are an abuse surface — rate-limit and isolate them like any public compute. Budget it as a feature, not a garnish: in our product engagements, a sandbox typically lands mid-build, once the data model has stabilised, and pays for itself in sales-call length alone — demos stop being narrations and start being collaborations.
Key takeaways
- Sandbox, trial and demo mode are different products with different promises; blurred blends corrode trust and pollute real workspaces.
- Demo data is casting: one believable fictional tenant, six-plus months of history, honest volume, and one or two seeded problems the product is built to catch.
- Consequence-free requires mechanics: an obvious reset, a labelled shell, visible stubbing of side effects.
- The swap-to-real moment is a designed flow: carry the user's sandbox behaviour into the real account's onboarding order, and keep the sandbox available afterwards as a rehearsal space.
- Measure sandbox-to-activation, depth of exploration, and reset behaviour — with events named before build.
FAQ
Should the sandbox be available before signup? If your sales motion is product-led, yes — an unauthenticated sandbox is the strongest conversion asset you'll build. Keep it isolated, rate-limited, and stripped of anything costly; persist activity anonymously and stitch it to the account on signup so onboarding can personalise.
How much seed data is enough? Enough to make your slowest screen honest. Six to thirteen months of history for anything with trends; volume within an order of magnitude of a real account for anything with tables. If a screen looks empty with seed data, the seed is wrong — not the screen.
Won't people mistake the sandbox for the real product? Only if the label is shy. A persistent banner, fictional data with a consistent cast, and a visible "exit to your workspace" control solve it. The failure mode we actually see is the opposite: teams hide the sandbox so hard that nobody finds it.
Isn't this just a good demo video with extra steps? No — a video is judged, a sandbox is inhabited. The conversion difference is agency: the user discovers the aha-moment themselves, which is why sandbox graduates onboard faster and churn less in the accounts we've instrumented.
Empty states are onboarding: designing the blank dashboard
The blank dashboard is the highest-leverage screen in a SaaS product: three empty-state archetypes, sample-data patterns that teach, and measuring the lift.
Template galleries: the shortcut to the aha moment
Starter templates are onboarding's best shortcut — if they're categorised by job not industry, previewed live, pruned ruthlessly and measured to activation, not clicks.
Onboarding checklists without the nag
Checklists can activate users or train them to ignore your UI. Sequencing by value, dismissible design and honest progress — lessons from shipped onboarding work.