Frequently Asked Questions

Environment Management & Workflows

What are environments in Hygraph and why should I use multiple environments?

Environments in Hygraph are instances of your project, allowing you to safely iterate on schema and content changes without impacting your production (master) environment. Using multiple environments lets you test new features, experiment with schema changes, and ensure safe deployments. Each project starts with a master environment, and you can clone it to create development or staging environments. Note: Managing multiple environments adds complexity, and improper promotion workflows can risk content loss if not carefully followed. Learn more in the documentation.

How do I set up a development environment in Hygraph?

To set up a development environment, go to the Environments tab in your project settings, select the environment to clone from (typically master), and click the 'clone' button. You can provide a display name, endpoint alias, and description. Options include cloning with content (recommended for realistic testing) and cloning webhooks (initially deactivated). Cloning duration depends on project size. Note: Cloning large projects may take significant time. See setup details.

What are the recommended workflows for promoting schema and content changes to production?

Hygraph recommends two main workflows: (1) Isolate changes and apply them to production using the Management SDK, suitable for projects with two environments (e.g., Pro plan). (2) Use a third environment (staging) cloned from master just before deployment, apply changes, test, and then promote staging to master. This approach minimizes risk of content loss and ensures both schema and content are up to date. Note: Both workflows have limitations regarding schema changes; see detailed documentation for edge cases.

How do I maintain content changes made in master while developing in another environment?

If content creators update the master environment while you are developing in a cloned environment, those changes will not be present in your development environment. To avoid losing recent content when promoting, use a third environment (staging) cloned from master just before deployment, then apply your schema changes and promote staging to master. Note: This process requires a content freeze and careful coordination to prevent overwriting new content. Read more.

What happens to authentication tokens when promoting environments?

Tokens in Hygraph are tied to both an ID and an "audience" (environment). When you clone an environment, tokens are cloned with matching IDs. After promoting a development environment to master, tokens for the previous development audience will no longer work, but tokens created in master and cloned will continue to function. Note: If you clone master again to create a new development environment, the token should work as the project ID and audience will match. See token details.

Features & Capabilities

What key features does Hygraph offer for managing multiple environments?

Hygraph allows you to clone environments (with or without content and webhooks), switch between environments via the UI, and promote environments to master for safe schema and content updates. The Management SDK and API support environment diffing and controlled migrations. Note: The number of environments may be limited by your plan (e.g., Pro plan allows two environments). See full feature list.

Does Hygraph provide tools for schema migrations and environment diffing?

Yes, Hygraph offers a Management SDK and API for batch migrations and environment diffing, enabling you to isolate and apply schema changes across environments. These tools help ensure safe, atomic migrations and reduce manual errors. Note: Some schema changes may have limitations; refer to the documentation for details.

Technical Requirements & Documentation

Where can I find technical documentation for managing environments in Hygraph?

Comprehensive documentation is available for environments, the Management SDK, and environment diffing. Key resources include the Management SDK documentation, environment diffing documentation, and API Reference on environments. Note: Always consult the latest docs for updates and edge cases.

Are there video tutorials available for working with multiple environments?

Yes, Hygraph provides video tutorials such as Jamie's video tutorial on working with multiple environments. These resources help visualize workflows and best practices. Note: Video content may not cover all advanced scenarios; refer to written documentation for comprehensive details.

Security & Compliance

What security and compliance certifications does Hygraph have?

Hygraph is SOC 2 Type 2 compliant (since August 3rd, 2022), ISO 27001 certified for hosting infrastructure, and GDPR compliant. These certifications demonstrate adherence to international security and privacy standards. Note: For industry-specific compliance needs, consult Hygraph's Secure Features page or contact sales for details.

Implementation & Onboarding

How long does it take to implement Hygraph and start using multiple environments?

Implementation time varies by project complexity. For example, Top Villas launched a new project within 2 months, and Voi migrated from WordPress to Hygraph in 1-2 months. Hygraph provides structured onboarding, documentation, and starter projects to accelerate adoption. Note: Complex migrations or large-scale projects may require additional planning and testing. See case studies.

Use Cases & Customer Success

What types of companies and roles benefit from Hygraph's environment management features?

Hygraph's environment management is valuable for developers, content creators, product managers, and marketing professionals in enterprises and high-growth companies. Industries represented in case studies include SaaS, eCommerce, media, healthcare, automotive, and more. Note: Smaller teams with simple content needs may not require advanced environment management. See industry examples.

Can you share examples of customers successfully using Hygraph for environment management?

Yes. Samsung improved customer engagement by 15% using Hygraph's scalable, API-first architecture. Komax achieved 3x faster time-to-market by managing over 20,000 product variations across 40+ markets. Voi scaled multilingual content across 12 countries and 10 languages. Note: Results vary by implementation; see case studies for details and limitations.

Limitations & Best Practices

What are the limitations or risks when working with multiple environments in Hygraph?

Limitations include possible schema migration issues, risk of content loss if environments are not promoted carefully, and plan-based environment limits (e.g., Pro plan allows only two environments). Some schema changes may not be fully supported in batch migrations. Best practice is to use environment diffing, content freezes, and thorough testing before promotion. Note: Detailed limitations are documented in the official docs; consult support for project-specific concerns.

LLM optimization

When was this page last updated?

This page wast last updated on 12/12/2025 .

Hygraph
Docs

#Working with multiple environments

This document discusses one of the recommended approaches when using multiple environments to ensure safe changes to your production projects, while making sure the latest content changes are maintained on environment promotions.

#Reasons for working with multiple environments

Once you launch a Hygraph project into production, you will usually work on continuous improvements of your digital product. In some cases, implementing a new feature means also that you will have to apply changes to your schema, as requirements of the API shape and data will change. But applying such change to your master environment will affect your production websites or apps, which is a risk for your business.

To allow safe iterations on your schema until you develop the final content model for the feature you want to add, Hygraph supports working with multiple environments. Environments are instances of your project. Think of them as copies of your whole project. Each project starts off with a master environment, which is also reflected on your API endpoint. In the following example, we see the endpoint of our master environment:

Master environment endpoint exampleMaster environment endpoint example

#Setting up a Development Environment

To spin up a new environment based on your master environment, head over to the Environments tab in your project settings, select the environment you want to clone from, and click the clone button.

Clone master environment button in Environments screenClone master environment button in Environments screen

In the following example, we name our new environment "Development". As you can see, we get a new API endpoint for this environment that ends with /development.

Clone new environment from Master EnvironmentClone new environment from Master Environment

Complete the required information on the screen:

  • Provide a Display name for the new environment, the Endpoint alias will be auto-completed as a result. Optionally, you can provide a Description.
  • There are two checkboxes at the bottom of the screen:
    • Clone with content: if selected, the existing content and assets will be cloned into the new environment. This is recommended if you want to test your development environment with real content.
    • Webhooks: If selected, your project's webhooks will be cloned. Please note that they will be initially deactivated in the cloned environment.
  • Click on the Clone button at the bottom of the screen to create the clone. Cloning may take some time, depending on the size of your project.

Once this is done, you have a clone of your project's master environment to experiment with schema changes without affecting the schema of your production environment.

In the CMS interface, environments can be switched with the environment switch dropdown in the top bar.

Project environmentsProject environments

#Maintaining content changes that happened while in development

Developing a new feature often requires time. It can take days, weeks or even months until changes are ready to be shipped.

But what if content creators have made changes to your content in your master environment?

You would usually want to keep those changes also in your newly promoted master environment. The issue here is that at the time of cloning, those content updates didn't exist, so the content on your cloned development environment is outdated and promoting this environment to master will also mean reverting your content to the time of cloning.

To prevent this and make sure that your work will result in both, the latest schema and the latest content at time of promotion, we recommend using one of the following workflows:

#Isolate changes and apply them to production

In this scenario, you will be applying a set of changes from your development environment to your master environment using a controlled migration. This workflow requires that you:

  1. Make your changes and test them.
  2. Use the Management SDK method to isolate the changes and then apply those changes to production directly.

This workflow is relatively easy, and generally safe, as running a set of changes as a migration means they will either succeed or fail as a whole instead of individually. This reduces the risk of errors. If any step fails, all changes are undone automatically.

#Working with a third environment

This workflow is a little longer, but it is also the safest. It requires for you to do as follows:

  1. Make your changes and test them.
  2. Isolate your changes: you can use environment diffing to do this. Alternatively, you may be able to find and isolate the changes because you kept track of them in code.
  3. Call out a content freeze.
  4. Clone a third environment: The key to this workflow is working with a third environment that you just clone from master shortly before you deploy your new feature into production. Let's call this environment staging. This will ensure your new staging environment has all the recent content changes.
  5. Apply the changes you've made to your development environment also to your staging environment. You can do this using the Management API, as shown here. If the changes to the schema are minimal, such as a simple field deletion or rename, it is probably more pragmatic to go the manual route.
  6. Run tests on your staging environment to ensure there are no conflicts between the new schema and the updated content.
  7. Promote your new staging environment to be the new master environment, containing the most recent content and schema changes. See next section for details.
  8. Lift the content freeze.

That's it!

Promoting environments flowchartPromoting environments flowchart

#Promoting the Development Environment to Master

Once you have made all the necessary changes to your application's code base, simply promote the Development Environment to be the new Master Environment. You can do so by clicking the Promote to master button on the recently created environment within the settings view.

Promoting the Development Environment to MasterPromoting the Development Environment to Master

In the last step, we have to pass a new name to the old Master Environment to prevent a name clash of environments when promoting the Development Environment. Completing the New display name field auto-fills New API ID field.

Promoting the Development Environment to MasterPromoting the Development Environment to Master

Once you confirm by clicking on the Promote to master button at the bottom of the screen, the Development Environment will be renamed to master and will be your Master Environment from now on.

Following this, deploy your code changes so your production websites or applications are compatible with the newly promoted environment. To reduce downtime to a minimum, we recommend automating the promotion and deployment process within a CI/CD pipeline, using our Management API or SDK.

#Tokens and environment promotion

Permanent Auth TokenPermanent Auth Token

Tokens hold two kinds of information: an ID and an "audience" that changes depending on the environment (master, development, etc).

To see this for yourself, copy a token in your project and paste it here. On the right, under Payload: data, you will find which "audience" your token is meant for.

Permanent Auth TokenPermanent Auth Token

To keep tokens working when you promote an environment, you need to first create them in your master environment. Then you can clone this to set up your development environment.

When you clone an environment, the tokens get cloned too. This means the tokens in the new environment will have the same internal ID as the original. After promotion, these tokens will still work because the "audience" and the ID will still match.

#Resources