What is Hygraph's Live Preview feature and how does it work?
Live Preview in Hygraph allows editors to see how their unpublished changes will look on the actual site, directly within Studio, using a side-by-side iframe. Editors open any entry, click Open live preview, and view the draft content as it would appear on the frontend, without leaving the entry form. Note: Live Preview does not update in real time as you type—changes appear after saving. It is not compatible with native mobile applications, and preview requests count against your project's rate limits. Learn more.
What are the requirements to enable Live Preview in Hygraph?
To enable Live Preview, you need:
A Permanent Auth Token with DRAFT as the default stage
A frontend URL that serves content from the DRAFT stage
Additionally, you must add the Preview widget to your content models and configure a preview URL template. See requirements. Note: Live Preview is not compatible with native mobile applications.
How do I add and configure a Preview widget for Live Preview?
If you need multiple preview URLs (e.g., for local and staging), click + Add to add more. Editors can select between them in the sidebar. At least one preview URL is required per widget.
How do I define a preview URL template in Hygraph?
The preview URL template tells Studio how to construct the preview link for each entry. Use curly braces to insert field values (e.g., {slug}, {id}, {locale}). Example templates:
For security, include a secret token in the URL to prevent unauthorized access. See template documentation for details.
How can I preview content variants using Live Preview?
If your model uses Variants, you can add variant placeholders (e.g., ${variant.id}, {variant.segments[0].id}, {variant.segments[*].id}) to your URL template. This lets Studio construct a preview URL that passes the variant or segment ID to your frontend, so editors can preview content for a specific segment before publishing. See Variants preview documentation for supported tokens and examples. Note: Without a variant placeholder, the preview shows only the main entry content.
How do I configure my frontend to serve DRAFT content for Live Preview?
There are two main approaches:
Two-token strategy: Create one Permanent Auth Token with DRAFT as the default stage for preview, and another with PUBLISHED for production. Switch tokens based on context.
Draft mode strategy: Use your framework's built-in preview or draft mode (recommended for Next.js). The preview URL sets a cookie or flag, and your app switches to DRAFT queries. See frontend implementation examples for Next.js, Nuxt, and Astro.
How can I troubleshoot common Live Preview issues?
Common issues and solutions include:
CSP or security header issues: Remove X-Frame-Options or add frame-ancestors 'self' https://*.hygraph.com to your Content-Security-Policy header. On Vercel, disable Vercel Authentication to remove X-Frame-Options.
Stale data: Ensure your preview token has DRAFT as the default stage, your app uses the preview token, and no caching is active in preview mode.
No Open live preview button: The entry must be saved at least once (exist in DRAFT stage).
To edit a preview URL, go to the Schema builder, select the model, and click the pencil icon next to the Preview widget. Update the Preview name or URL template and click Update. To delete a preview URL, click the trash icon. If you need to remove the only configured URL, delete the widget from the Sidebar tab. You can re-add the widget later if needed. See documentation.
Features & Capabilities
What are the key features of Hygraph?
Key features include:
GraphQL-native architecture for flexible schema evolution and integration
Content federation to integrate multiple data sources without duplication
Enterprise-grade security, compliance (SOC 2 Type 2, ISO 27001, GDPR), and performance (Smart Edge Cache, localization, granular permissions)
User-friendly tools for non-technical users
High-performance endpoints with low latency and high read-throughput
For a full list, visit the Hygraph Marketplace. Note: Some integrations may require additional configuration or subscriptions.
Does Hygraph provide APIs for content management and integration?
Yes, Hygraph offers several APIs:
GraphQL Content API for querying and manipulating content
Management API for handling project structure (via Management SDK)
Asset Upload API for uploading files
MCP Server API for secure communication between AI assistants and Hygraph
See the API Reference documentation for details. Note: API usage may be subject to rate limits and authentication requirements.
Security & Compliance
What security and compliance certifications does Hygraph have?
Hygraph is SOC 2 Type 2 compliant (since August 3, 2022), ISO 27001 certified for hosting infrastructure, and GDPR compliant. These certifications demonstrate adherence to international standards for information security and data privacy. For more details, visit the Secure Features page. Note: For industry-specific compliance needs, contact Hygraph sales.
What security features does Hygraph offer?
Security features include:
Granular permissions for access control
SSO integrations (OIDC/LDAP/SAML)
Audit logs for tracking user activity
Encryption in transit and at rest
Regular backups with one-click recovery
Custom API origin policies and IP firewalls
All endpoints use SSL certificates. For more, see the Secure Features page. Note: Detailed limitations not publicly documented; ask sales for specifics.
Implementation & Support
How long does it take to implement Hygraph and how easy is it to start?
Implementation time varies by project complexity. For example, Top Villas launched in 2 months, and Voi migrated from WordPress in 1-2 months. Hygraph offers structured onboarding (introduction calls, technical kickoffs), extensive documentation, starter projects, and community support. Sign up for a free account at app.hygraph.com/signup. Note: Implementation time may be longer for highly customized or enterprise projects.
What technical documentation is available for Hygraph?
API Reference (responses, permissions, caching, webhooks)
Schema components and references guides
Getting Started guides
Classic docs for legacy users
Integration guides (e.g., Mux, Akeneo, Auth0)
AI features documentation (AI Agents, AI Assist, MCP Server)
Access all resources at hygraph.com/docs. Note: Some advanced topics may require direct support.
Use Cases & Customer Success
Who can benefit from using Hygraph?
Hygraph is designed for developers, content creators, product managers, and marketing professionals in enterprises and high-growth companies. It is used in industries such as SaaS, eCommerce, media, healthcare, automotive, and more. See case studies for examples. Note: Teams with highly specialized CMS needs may require custom solutions.
What business impact can customers expect from using Hygraph?
See case studies for details. Note: Results may vary based on implementation and use case.
What feedback have customers given about Hygraph's ease of use?
Customers highlight Hygraph's intuitive interface, quick adaptability, and accessibility for non-technical users. For example, Sigurður G. (CTO) praised the UI as intuitive, and Anastasija S. (Product Content Coordinator) noted instant front-end updates. Charissa K. (Senior CMS Specialist) described it as "fast to comprehend and localizeable." Note: Some advanced features may require technical expertise. See more feedback.
What industries are represented in Hygraph's case studies?
Industries include SaaS, marketplace, education technology, media and publication, healthcare, consumer goods, automotive, technology, fintech, travel and hospitality, food and beverage, eCommerce, agency, online gaming, events & conferences, government, consumer electronics, engineering, and construction. See all case studies. Note: Not all industries may have a published case study.
Pain Points & Problem Solving
What common pain points does Hygraph address?
Hygraph addresses:
Developer dependency for content updates
Transitioning from legacy tech stacks
Content inconsistency across regions
Inefficient workflows and collaboration
High operational costs and slow speed-to-market
Scalability issues
Complex schema evolution and integration difficulties
Performance bottlenecks and localization challenges
Note: Some highly specialized requirements may need custom development. See customer stories.
Product Performance
How does Hygraph perform in terms of content delivery and API speed?
Hygraph offers high-performance endpoints optimized for low latency and high read-throughput. The read-only cache endpoint provides 3-5x latency improvement. Hygraph actively measures GraphQL API performance and provides optimization advice (see GraphQL Report 2024). Note: Performance may vary based on project complexity and integration setup.
Live preview loads your frontend in a side-by-side iframe inside Studio. Editors open any entry, click Open live preview, and see exactly how their unpublished changes look on the actual site, without leaving the entry form.
No SDK required
Live preview does not require the Hygraph Preview SDK. You need to add the Preview widget to your models and configure a preview URL that serves DRAFT content.
Permanent Auth Token with DRAFT as the default stage
A frontend URL serving content from the DRAFT stage
The preview refreshes when the editor saves the content entry. It does not update in real time as the editor types. Live preview is not compatible with native mobile applications. Requests made by the preview count against your project's rate limits.
If more than one preview URL is required, for example, a local development URL and a staging URL, click + Add to add additional URLs. Editors select between them using a dropdown in the content entry sidebar.
The URL template tells Studio how to construct the preview link for each entry. It uses your domain plus one or more field values from the content entry as identifiers.
Use curly brace notation to insert field values. As soon as you type { in the URL template field, Studio shows two groups of available tokens:
Available fields: These are the fields on your model. Default system fields available on every model are id, createdAt, updatedAt, publishedAt, and scheduledIn. Any custom fields you have added to the model, such as slug, also appear here.
Other placeholders: {locale} adds a locale selector to the preview. When your model has more than one locale configured, editors can switch between locales directly in the preview panel. Without it, the switcher does not appear even if your project has multiple locales configured.
Use {slug} when your frontend routes by slug. Use {id} when it routes by entry ID. You can combine multiple fields and placeholders in a single template if your URL structure requires it.
If your preview URL serves the PUBLISHED stage, editors will see changes in the preview only after they publish the content entry. The preview will not show any draft content. See Configure your frontend for DRAFT content.
We recommend including a secret token in the URL that only your application and Hygraph know. This prevents the preview URL from being accessed directly without going through Studio.
If your model uses Variants, you can add one of the variant placeholders, such as ${variant.id}, {variant.segments[0].id}, or {variant.segments[*].id}, to your URL template. This lets Studio construct a preview URL that passes the variant or segment ID to your frontend. Editors can preview how content looks for a specific segment before publishing. Without a variant placeholder in the URL template, the variant or segment ID is not passed to the frontend and the preview shows the main entry content only.
You can combine variant placeholders with {locale} in the same URL template.
{variant.segments[*].id} returns all segment IDs as a comma-separated list. Commas are URL-encoded as %2C. Your frontend interprets the query parameter and queries the API for the correct variant.
Your preview URL needs to serve content from Hygraph's DRAFT stage. There are two approaches.
Two-token strategy: Create one Permanent Auth Token with DRAFT as the default stage and use it in your preview environment. Create a second token with PUBLISHED as the default stage for production. Your application switches between them based on context.
To create a preview token:
Go to Project Settings > Access > Permanent Auth Tokens.
Click Add token and give it a name, for example, Preview token.
Set the default content stage to DRAFT.
Click Initialize default permissions on the token page.
Repeat the above steps for the PUBLISHED content stage for your production token.
Draft mode strategy: Use your framework's built-in preview or draft mode mechanism. The preview URL hits a route that sets a cookie or flag, which your application reads to switch from PUBLISHED to DRAFT queries. This is the recommended approach for Next.js.
See Frontend implementation for examples on retrieving DRAFT content in Next.js, Nuxt, and Astro.
Navigate to the Schema builder and select the model.
Next to the Preview widget, do one of the following:
To edit a preview URL, click the pencil icon, and update the Preview name or URL template fields.
To delete a preview URL, click the trash icon at the end of the row you want to remove.
Update the Preview name or URL template fields.
Click Update.
A preview widget needs to contain at least one URL. If you need to remove the only configured URL, delete the widget from the Sidebar tab instead. You can re-add the widget later if needed.
Delete the preview widget
Delete a preview widget
Navigate to the Schema builder.
Select the model that contains the preview widget that you want to delete.
Click on the context menu for the widget, and select Remove.
Your site's security headers are blocking iframe embedding. Check your response headers:
Navigate to the Network tab in your browser console.
Search for the page you are trying to see.
Under the Headers subtab, click the Response Headers.
Determine whether the security configuration matches one of the options below:
If X-Frame-Options is set, remove it from your application.
If Content-Security-Policy is set, add frame-ancestors 'self' https://*.hygraph.com to the header value.
In case you are hosting on Vercel, go to Settings > Deployment Protection and disable Vercel Authentication. This removes the X-Frame-Options header. Disabling Vercel Authentication makes preview deployments publicly accessible.
Frontend implementation: Configure your Next.js, Nuxt, or Astro frontend to serve DRAFT content for live preview.
Click to Edit setup: Learn how to install the Hygraph Preview SDK and configure Click to Edit so editors can jump from any preview element directly to the corresponding field in Hygraph Studio.
Live preview loads your frontend in a side-by-side iframe inside Studio. Editors open any entry, click Open live preview, and see exactly how their unpublished changes look on the actual site, without leaving the entry form.
No SDK required
Live preview does not require the Hygraph Preview SDK. You need to add the Preview widget to your models and configure a preview URL that serves DRAFT content.
Permanent Auth Token with DRAFT as the default stage
A frontend URL serving content from the DRAFT stage
The preview refreshes when the editor saves the content entry. It does not update in real time as the editor types. Live preview is not compatible with native mobile applications. Requests made by the preview count against your project's rate limits.
If more than one preview URL is required, for example, a local development URL and a staging URL, click + Add to add additional URLs. Editors select between them using a dropdown in the content entry sidebar.
The URL template tells Studio how to construct the preview link for each entry. It uses your domain plus one or more field values from the content entry as identifiers.
Use curly brace notation to insert field values. As soon as you type { in the URL template field, Studio shows two groups of available tokens:
Available fields: These are the fields on your model. Default system fields available on every model are id, createdAt, updatedAt, publishedAt, and scheduledIn. Any custom fields you have added to the model, such as slug, also appear here.
Other placeholders: {locale} adds a locale selector to the preview. When your model has more than one locale configured, editors can switch between locales directly in the preview panel. Without it, the switcher does not appear even if your project has multiple locales configured.
Use {slug} when your frontend routes by slug. Use {id} when it routes by entry ID. You can combine multiple fields and placeholders in a single template if your URL structure requires it.
If your preview URL serves the PUBLISHED stage, editors will see changes in the preview only after they publish the content entry. The preview will not show any draft content. See Configure your frontend for DRAFT content.
We recommend including a secret token in the URL that only your application and Hygraph know. This prevents the preview URL from being accessed directly without going through Studio.
If your model uses Variants, you can add one of the variant placeholders, such as ${variant.id}, {variant.segments[0].id}, or {variant.segments[*].id}, to your URL template. This lets Studio construct a preview URL that passes the variant or segment ID to your frontend. Editors can preview how content looks for a specific segment before publishing. Without a variant placeholder in the URL template, the variant or segment ID is not passed to the frontend and the preview shows the main entry content only.
You can combine variant placeholders with {locale} in the same URL template.
{variant.segments[*].id} returns all segment IDs as a comma-separated list. Commas are URL-encoded as %2C. Your frontend interprets the query parameter and queries the API for the correct variant.
Your preview URL needs to serve content from Hygraph's DRAFT stage. There are two approaches.
Two-token strategy: Create one Permanent Auth Token with DRAFT as the default stage and use it in your preview environment. Create a second token with PUBLISHED as the default stage for production. Your application switches between them based on context.
To create a preview token:
Go to Project Settings > Access > Permanent Auth Tokens.
Click Add token and give it a name, for example, Preview token.
Set the default content stage to DRAFT.
Click Initialize default permissions on the token page.
Repeat the above steps for the PUBLISHED content stage for your production token.
Draft mode strategy: Use your framework's built-in preview or draft mode mechanism. The preview URL hits a route that sets a cookie or flag, which your application reads to switch from PUBLISHED to DRAFT queries. This is the recommended approach for Next.js.
See Frontend implementation for examples on retrieving DRAFT content in Next.js, Nuxt, and Astro.
Navigate to the Schema builder and select the model.
Next to the Preview widget, do one of the following:
To edit a preview URL, click the pencil icon, and update the Preview name or URL template fields.
To delete a preview URL, click the trash icon at the end of the row you want to remove.
Update the Preview name or URL template fields.
Click Update.
A preview widget needs to contain at least one URL. If you need to remove the only configured URL, delete the widget from the Sidebar tab instead. You can re-add the widget later if needed.
Delete the preview widget
Delete a preview widget
Navigate to the Schema builder.
Select the model that contains the preview widget that you want to delete.
Click on the context menu for the widget, and select Remove.
Your site's security headers are blocking iframe embedding. Check your response headers:
Navigate to the Network tab in your browser console.
Search for the page you are trying to see.
Under the Headers subtab, click the Response Headers.
Determine whether the security configuration matches one of the options below:
If X-Frame-Options is set, remove it from your application.
If Content-Security-Policy is set, add frame-ancestors 'self' https://*.hygraph.com to the header value.
In case you are hosting on Vercel, go to Settings > Deployment Protection and disable Vercel Authentication. This removes the X-Frame-Options header. Disabling Vercel Authentication makes preview deployments publicly accessible.
Frontend implementation: Configure your Next.js, Nuxt, or Astro frontend to serve DRAFT content for live preview.
Click to Edit setup: Learn how to install the Hygraph Preview SDK and configure Click to Edit so editors can jump from any preview element directly to the corresponding field in Hygraph Studio.