RevOps + HubSpot 8 min read

Why You Test in a HubSpot Sandbox, Not in Production

What a sandbox copies, what it leaves behind, and why loading one with real customer records is a privacy decision before it is a convenience.

Harry Spicer-Short AI & Digital Strategist
10:47
1x

A portal that several teams and an outside integration partner all touch is never idle. Someone has a record open on a call. A workflow is enrolling. An integration is writing. That is the setting in which a small edit to an enrolment trigger becomes an email to everyone in the database, made by a person who had no way of knowing what else was running that morning.

A HubSpot sandbox is a separate account you are allowed to break. You build the change there, prove what it does, then make it in the live account knowing what it does.

Worth being precise about what that gets you, though. A sandbox copies your configuration. Your business is a good deal more than your configuration, and the gap between the two is where the surprises live.

What a sandbox mirrors, and what it does not

What it carries across is structure and settings. The tooling HubSpot gives its partners and developers for that:

  • The HubSpot Schema Replicator copies the configuration of your CRM objects, so the sandbox holds your properties and object setup instead of a default account's.
  • The Portal Toolkit, an extension of the HubSpot Migrator, creates sandboxes, tracks change sets and migrates schemas, and lets you choose which data pipelines and properties come across.
  • The Portal Sync app keeps data flowing continuously between portals, with filtering by users, pipelines or business units, which matters once you run more than one.

What it does not carry:

  • Your data volumes, unless you deliberately load records into it.
  • Your sending history, so it can tell you nothing about deliverability. More on that below.
  • Your team's habits. The three reps who use a deal property for something it was never designed for are not in the sandbox, and they are usually what breaks the change.
  • Your live connections. An integration in a sandbox has to point at something. Decide whether that is the vendor's own test environment or your real account, and make sure nobody points it at production by accident, because a test that writes to a live system is worse than no test.

Then the part people plan around badly: changes do not promote themselves. When the test passes, somebody rebuilds the change in the live account by hand. The sandbox proves the design, the production build is still a build, and it needs its own slot in the week. Budget for one and you ship half of it.

If you are running a smaller portal and want the shorter version of this argument, we wrote it up as the safe way to test your CRM strategy in a sandbox.

The changes that most deserve a rehearsal

Not everything needs a sandbox. A copy change on a landing page does not. These do, because in each case the damage happens before anyone notices:

  • An enrolment trigger on any workflow that sends something. Check the enrolment count in the sandbox before you check the email.
  • Anything touching a property another team writes to. Renaming it, changing its type, or dropping an option value that an integration still sends every night.
  • Imports and deduplication. An import run against the wrong unique identifier merges records that were never the same person, and unpicking that is a project rather than a fix.
  • Integration field mapping, particularly the first sync after your partner changes something at their end.
  • Permission and access changes, where the failure is silent. Someone can see a pipeline they should not, and nobody finds out until they mention it.
  • Anything that runs on a schedule, because the report on how it went arrives at 2am.

One more use that never gets scheduled and should: a sandbox is where somebody in their first fortnight learns your portal. Give a new hire a place where they can build a workflow badly, break it, and work out why, without any of it reaching a customer.

Structure only, or a copy with real records in it

HubSpot offers more than one kind of sandbox, and which ones you can create depends on your subscription, so check your own account before you plan around it. The choice itself comes down to what you are actually testing.

Structure with no records is enough for testing logic: a workflow's branches, property dependencies, the stages in a new pipeline, permission sets, how a form behaves. Create half a dozen test records by hand and you can prove the logic in an afternoon.

Are your workflow changes tested anywhere but live?

Most portals get edited on a Friday and watched on a Monday.

You need real records when volume or history changes the answer. Deduplication rules. List membership. A calculated or rollup property. Any report. Any migration rehearsal. A dedupe rule cannot be tested against twelve invented contacts, and a report that reads well on twelve rows tells you nothing about ninety thousand.

The second case is where the next section applies, because "records" means your customers' personal information.

The point where a sandbox becomes a privacy decision

Testing a change somewhere other than production is the most direct way of avoiding exposing or corrupting real customer information, and that is an obligation as much as good manners. APP 11 of the Australian Privacy Principles, administered by the OAIC, puts the duty to keep personal information secure and protected from misuse, interference and loss on the organisation holding it. A change tested against live records is a change tested against the exact thing you are required to protect.

The other side of it gets much less attention. The moment you seed a sandbox with production data, you have created a second copy of your customers' personal information: a different account, a different user list, usually including contractors at your integration partner, and typically nobody reviewing who still has access six months later. Same obligation, second location, no owner.

So the working rules:

  • Default to structure with no customer records in it.
  • When a test genuinely needs volume, take the smallest set that answers the question, and replace email addresses and phone numbers before they go in, so a stray test send cannot reach a real person.
  • Put an end date on the copy and clear it out when the test is done.
  • Treat the partner's sandbox access and their production access as two separate decisions.

Keeping test and live systems apart is ordinary security hygiene, and the Australian baseline guidance for it sits with the ASD's Australian Cyber Security Centre at cyber.gov.au. The same reasoning applies when the thing being tested talks to people on your behalf, which is a longer story: how NBH tests an AI agent before it goes near a customer.

The migration rehearsal

Migration is the job where a sandbox earns its keep immediately, because the failure modes are well known:

  • Data loss or corruption, some of which stays invisible for months.
  • Privacy non-compliance, as above.
  • Semantic mismatch, where a Salesforce or Microsoft Dynamics field has no equivalent in HubSpot's object model, so data that was clean on the way out arrives as a puzzle.
  • Downtime, including the window where a record exists in neither system.

The rehearsal is a sample migration on a subset, then a check of record counts and field mapping against what you expected, before anyone runs the full load. The practical parts:

  1. Audit the old system first and decide what deserves to come across. Most portals carry years of records nobody will open again.
  2. Declare a cut-off date for data entry into the old system, so you are not chasing records created mid-transfer.
  3. Have someone available during the window with the authority to stop it.
  4. Write the contingency plan while everyone is calm.
  5. Validate afterwards, against numbers you agreed beforehand.
  6. Tell the team what is happening and when, more often than feels necessary.

The field-level detail is in our CRM data migration and field mapping checklist.

Three migration paths worth knowing about. The HubSpot to HubSpot Migrator moves one portal into another without manual field mapping. SyncMatters offers guided migration through an API when the mapping is custom. The Portal Migration Suite is the one for combining several HubSpot portals into one.

Email is the one thing a sandbox cannot prove

A sandbox will show you what a template looks like and whether the workflow fires it. It will not tell you whether the mail reaches an inbox, because deliverability depends on the DNS records on your real sending domain, SPF, DKIM and DMARC, and on the reputation that domain has built up over time. None of that exists in a sandbox.

So split the testing. Logic and content go in the sandbox, with something like Mailtrap, a RESTful API that catches test sends, or a HubSpot developer account, so a test message never leaves the building. Authentication gets checked separately on the live domain, because those DNS records are what the major mailbox providers use to decide your mail is legitimate.

A sandbox is for the CRM. Content staging is for the website.

These two get mixed up constantly. HubSpot's content staging tool is for reworking existing website pages: you edit a staged version, review it, and publish when it is ready, which reduces going live to a click. It also walks you through the DNS changes involved in moving to a new domain. A sandbox is a separate account for CRM structure, workflows, objects and data. Two different jobs, and neither covers the other.

Who makes the production change

One rule worth writing down when several teams and an outside partner all have access.

The partner builds it and proves it in the sandbox. The change in the live account is made by whoever is accountable for the portal.

Two reasons for that. There is a record of who changed what and when, which you will want the first time a report goes strange. And the person making the change is the one who knows finance is running month-end today, which is the sort of thing no test environment will ever tell you.

The test before the test

If you had to make one change to your live portal tomorrow, could you say what else would move as a result? Workflows that enrol on that property, the integration that reads it, the report the leadership team opens on Friday.

If that takes more than a minute to answer, the sandbox is not really the thing you are missing, and mapping what depends on what is where our RevOps and HubSpot work usually starts.

Wondering what your last migration actually broke?

The costly mistakes show up weeks later in someone else's report.

So which change have you been putting off because nobody can tell you what it would touch?

Neighbourhood

Neighbourhood is a HubSpot Diamond Partner in Brisbane. We build AI systems and the revenue operations they run on, for businesses across Australia and New Zealand.