# Sandbox vs. Production

NetSuite provides separate environments for testing and live operations. Understanding how to use them effectively is important for managing <code class="expression">space.vars.productName</code> safely.

## What is a Sandbox?

A Sandbox is a copy of your Production NetSuite account used for testing. It contains the same records, customisations, and configurations as Production, but any changes you make in the Sandbox don't affect your live environment.

Think of it as a practice version of your NetSuite account.

## What is Production?

Production is your live NetSuite environment; it is the one your employees, customers, and partners use every day. Changes made here affect real data and real users immediately.

## Why use a Sandbox?

Using a Sandbox before making changes in Production helps you:

* **Test updates safely:** Install <code class="expression">space.vars.productName</code> updates and verify everything works before applying to Production.
* **Try new configurations:** Experiment with new roles, workflows, or settings without risk.
* **Train users:** Let new users practice in the portal without affecting real data.
* **Troubleshoot issues:** Reproduce and diagnose problems without impacting live operations.

## How to access your Sandbox

{% stepper %}
{% step %}

### Sign in to NetSuite

Log in to your NetSuite account.
{% endstep %}

{% step %}

### Open Release Preview

Go to **Setup > Company > Release Preview**, or check with your NetSuite account manager for Sandbox access.
{% endstep %}

{% step %}

### Use the Sandbox URL

Your Sandbox typically has a different URL from Production (usually with "sandbox" in the address).
{% endstep %}
{% endstepper %}

{% hint style="info" %}
Not all NetSuite editions include Sandbox environments. Check your NetSuite subscription to see if Sandbox is available. If you don't have a Sandbox, take extra care when making changes in Production.
{% endhint %}

## Refreshing your Sandbox

Sandbox environments are periodically refreshed (copied from Production) to keep them current. When a refresh happens:

* All data in the Sandbox is replaced with a copy of Production data.
* Any changes you made in the Sandbox since the last refresh are lost.
* <code class="expression">space.vars.productName</code> will need to be verified after a refresh to ensure it still works correctly.

After a Sandbox refresh:

{% stepper %}
{% step %}

### Sign in to the Sandbox

Use the Sandbox URL.
{% endstep %}

{% step %}

### Open SuiteApps

Click **SuiteApps** in the top navigation, then find <code class="expression">space.vars.productName</code> in your installed list.
{% endstep %}

{% step %}

### Verify <code class="expression">space.vars.productName</code>

Confirm it's listed and shows the correct version.
{% endstep %}

{% step %}

### Test portal functions

Log in to the portal in the Sandbox to confirm everything's working.
{% endstep %}
{% endstepper %}

## Recommended workflow for changes

Follow this process for any significant change to your <code class="expression">space.vars.productName</code> setup:

| Step | Environment    | Action                                                     |
| ---- | -------------- | ---------------------------------------------------------- |
| 1    | **Sandbox**    | Make the change (install update, modify settings, etc.)    |
| 2    | **Sandbox**    | Test thoroughly: verify portal functions, check for errors |
| 3    | **Sandbox**    | Have a second person verify if possible                    |
| 4    | **Production** | Apply the same change                                      |
| 5    | **Production** | Verify the change works correctly in the live environment  |

## Differences between Sandbox and Production

| Aspect           | Sandbox                                                             | Production                          |
| ---------------- | ------------------------------------------------------------------- | ----------------------------------- |
| **Data**         | Copy of Production (may be slightly outdated)                       | Live, real-time data                |
| **Users**        | Same users as Production, but actions don't affect real accounts    | Real users with real access         |
| **Email**        | Emails are typically blocked or redirected in Sandbox               | Emails are sent to real recipients  |
| **Integrations** | External integrations may not work or may connect to test endpoints | Connected to live external services |
| **URL**          | Different URL (usually contains "sandbox")                          | Your standard NetSuite URL          |

## Tips for managing environments

* **Label your browser tabs:** It's easy to confuse Sandbox and Production. Keep track of which environment you're in.
* **Use Sandbox for all testing:** Never test changes directly in Production if you have a Sandbox available.
* **Document your changes:** Keep notes of what you changed in Sandbox so you can replicate the steps in Production.
* **Time your changes:** Apply Production changes during low-activity periods.
* **Communicate with your team:** Let users know if the Sandbox is being refreshed or if Production changes are planned.

## Related Pages

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>Updating</strong> <code class="expression">space.vars.productName</code></td><td>Step-by-step update instructions to apply in Sandbox first.</td><td><a href="/pages/EaQWLfMLi66s0dLNMQ2u">/pages/EaQWLfMLi66s0dLNMQ2u</a></td></tr><tr><td><strong>Updates Overview</strong></td><td>How updates work and best practices.</td><td><a href="/pages/U0u0lVleIYMP9ZlbTAui">/pages/U0u0lVleIYMP9ZlbTAui</a></td></tr><tr><td><strong>Installation Issues</strong></td><td>Troubleshoot if a Sandbox or Production install fails.</td><td><a href="/pages/zZmidmc4xfYsuugK4Btq">/pages/zZmidmc4xfYsuugK4Btq</a></td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.in8sync.com/netsuite-admin-guide/overview-5/environments.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
