Ghost Labs — Beta Features, Experimental Settings and Custom Config
In this tutorial, you'll learn about Ghost Labs — the experimental features section in Ghost that gives you early access to beta functionality, developer tools, and custom configuration options not yet available in the main settings.
What You'll Learn
- What Ghost Labs is and how to access it
- The difference between Stable, Beta, and Alpha features
- Available Labs features and how to enable them
- Custom configuration via the Ghost config file
- Using the Ghost API from Labs for testing
- The risks of using experimental features in production
- How Labs features graduate to stable releases
- Labs for developers: tools and debugging features
Why It Matters
Ghost Labs gives you early access to features that are being developed or tested. Using Labs features lets you stay ahead of the curve — you can adopt new capabilities before they are officially released. However, Labs features come with risks: they may have bugs, incomplete documentation, or breaking changes in future updates. Understanding which Labs features are safe to use in production and which are strictly for testing prevents site-breaking mistakes.
Real-World Use
A developer is building a headless Ghost site with a React frontend. He needs a feature that sends custom webhook payloads, which is available as a Labs feature before its stable release. He enables it in Labs, tests it thoroughly on a staging site, and determines it is stable enough for production. Three months later, the feature graduates to stable with the same API surface, and his integration continues working without changes.
Learning Path
flowchart LR A["Ghost Admin"] --> B["Ghost Labs
You are here"]:::current B --> C["Ghost Migration"] C --> D["Posts & Pages"] classDef current fill:#38bdf8,color:#0f172a,stroke-width:2px
What is Ghost Labs?
Ghost Labs is a section in the admin panel at /ghost/#/labs/. It contains experimental features that the Ghost core team is testing. These features may be:
- New editor capabilities
- Developer API endpoints
- Performance improvements
- Experimental integrations
- Debugging and diagnostic tools
Labs features are not guaranteed to work perfectly, are not covered by standard support, and may change or be removed in future releases.
Accessing Ghost Labs
Navigate to your Ghost admin panel and click "Labs" in the sidebar, or go directly to:
https://yoursite.com/ghost/#/labs/
The Labs page shows a list of available experimental features with toggle switches.
Types of Labs Features
Beta Features
Beta features are close to stable release. They are functional and mostly documented, but may have minor bugs or missing edge cases. Examples include new API endpoints or editor cards that are being tested before becoming default.
Risk for production: Low to moderate. Use with caution on staging first.
Alpha Features
Alpha features are early prototypes. They may be missing core functionality, have significant bugs, or have APIs that will change. The Ghost team is gathering feedback on the approach, not the implementation.
Risk for production: High. Do not use alpha features on live production sites.
Developer Tools
These are tools for debugging and development, not end-user features. Examples include verbose logging, API debugging output, and performance profiling.
Risk for production: Low individually, but enable only when debugging.
Common Labs Features (Ghost 5.x)
The specific Labs features change with each Ghost version. Here are some that have appeared in Ghost 5.x:
Email Only Content
Allows you to create posts that are sent as email newsletters but are not published on your site. Readers can only access them through their email inbox.
Location: Labs > Email Only Content
Status: Beta (may be stable by the time you read this)
How to use it:
- Enable "Email Only Content" in Labs.
- Create a new post.
- In the post settings, toggle "Email Only."
- Publish — the post is sent as an email but not visible on your site.
Use cases:
- Exclusive subscriber content
- Personal announcements
- Sponsor emails
Content API Custom Output
Allows you to request custom fields and formats from the Content API, beyond the default response structure.
Location: Labs > Content API Custom Output
Status: Alpha
This is useful for headless Ghost setups where you need specific data shapes.
Webhook Custom Payloads
Enables the ability to customize the JSON payload sent by webhooks, rather than using the default format.
Location: Labs > Webhook Custom Payloads
Status: Beta
Custom Theme Settings
Allows theme developers to define custom settings in their theme's package.json that site owners can configure in the admin panel.
Location: Labs > Custom Theme Settings
Status: Beta
Example: A theme can define a custom setting for "Show author bio on posts" that appears as a toggle in the admin.
Import/Export Improvements
Upgraded import/export features including support for larger files and additional content types.
Location: Labs > Import/Export Improvements
Status: Beta
Config-Level Labs Settings
Some Labs features are controlled via the Ghost configuration file (config.production.json) rather than the admin panel. These are typically lower-level experimental options.
{
"labs": {
"enableDeveloperExperiments": true,
"enableSEOActivityBar": true
}
}
These config-level labs options are not always visible in the admin Labs panel.
Developer Experiments
The enableDeveloperExperiments flag unlocks additional developer-focused features:
{
"labs": {
"enableDeveloperExperiments": true
}
}
This enables:
- Verbose API request/response logs
- Template rendering debug output
- Database query profiling
- Error stack traces in API responses
Enable this only during development and debugging. Never enable it in production — it exposes internal application details and impacts performance.
The Export Feature
The Labs page also contains the built-in content export tool:
Labs > Export > Export your content
This downloads all your content as a JSON file, including:
- Posts and pages (all fields including HTML, excerpt, feature image)
- Tags with metadata
- Authors and their bios
- Site settings
This export format is compatible with Ghost's import tool. You can use it for:
- Migrating between Ghost installations
- Creating backups
- Moving from local to production
The Import Feature
Located in the same Labs section:
Labs > Import > Import content
You can import JSON files exported from Ghost or migrated from WordPress and Medium (covered in detail in Lesson 9).
Beta Features Lifecycle
Understanding how Labs features become stable helps you plan:
flowchart LR A["Internal Prototype"] --> B["Alpha (Labs)"] B --> C["Beta (Labs)"] C --> D["Stable (Default)"] D --> E["Removed (End of life)"] style A fill:#fbbf24,color:#0f172a style B fill:#fb923c,color:#0f172a style C fill:#38bdf8,color:#0f172a style D fill:#4ade80,color:#0f172a style E fill:#f87171,color:#0f172a
- Internal Prototype: Ghost core team builds the feature internally.
- Alpha: Released in Labs for early testing. APIs likely change.
- Beta: Released in Labs with more stability. APIs mostly final.
- Stable: Moved out of Labs, enabled by default, fully supported.
- Removed: Replaced or no longer needed.
The timeline from Alpha to Stable varies from weeks to months, depending on the feature's complexity and community feedback.
Risks of Using Labs Features
Breaking Changes
A Labs feature may work differently after an update. If you build a site feature around a Labs API endpoint, that endpoint could change or disappear in the next Ghost version.
Bugs
Labs features have not undergone full testing. You may encounter crashes, data corruption, or unexpected behavior.
No Support
The Ghost team does not officially support Labs features. If something breaks, you cannot file a support ticket for a Labs feature. Community forums may help, but there is no guarantee.
Performance Impact
Some Labs features add logging, profiling, or additional processing that slows down your site. Always test performance before enabling a Labs feature on production.
When to Use Labs Features
| Situation | Recommendation |
|---|---|
| Testing a new feature locally | Safe — enable everything |
| Evaluating a feature for a client project | Enable on staging, test thoroughly |
| Using a Beta feature in production | Possible — test first, monitor closely |
| Using an Alpha feature in production | Avoid |
| Enabling developer experiments in production | Never — security risk |
Common Mistakes
Enabling developer experiments in production: The
enableDeveloperExperimentsflag exposes debugging information in API responses. This can leak sensitive data and slow down your site. Only enable it on local or staging environments.Assuming Labs settings survive Ghost updates: Ghost updates may reset Labs settings to defaults or remove experimental features entirely. Always check Labs after an update.
Building a business dependency on an Alpha feature: If you build your site's revenue model around a Labs feature that never graduates to stable, you may need to rebuild. Treat all Labs features as temporary until they are marked stable.
Not documenting which Labs features you have enabled: When a new team member or future you tries to debug a site issue, knowing which Labs features are active is essential. Document all enabled Labs features and why they are enabled.
Using the Labs export as your only backup: The Labs export tool is convenient, but it exports content only — not settings, themes, or configuration. Use a full backup strategy (database dump + file copy) for real backups.
Practice Questions
What is the difference between Alpha and Beta features in Ghost Labs? Answer: Alpha features are early prototypes with incomplete functionality and unstable APIs. Beta features are more complete, mostly stable, and likely to graduate to stable release with minimal changes. Use Alpha for testing only; Beta can be cautiously used in production after testing.
Where can you export Ghost site content for backup or Migration? Answer: The Export tool is located in Labs > Export > Export your content. It downloads a JSON file containing all posts, pages, tags, authors, and settings.
Why should you never enable
enableDeveloperExperimentsin production? Answer: It enables verbose API logging, template debugging, database query profiling, and error stack traces in API responses. This exposes internal application details that could help attackers understand your infrastructure, and it degrades performance due to additional logging overhead.Challenge: Set up a local Ghost installation. Enable all available Labs features. Document each feature: what it does, whether it is Alpha or Beta, and a use case for it. Then test one Beta feature by building a small project around it — for example, create an email-only post if that feature is available.
FAQ
Mini Project
Your task: Evaluate and document the Labs features available in your Ghost version.
- Access the Labs page in your Ghost admin panel.
- List every available feature with its status (Alpha/Beta).
- For each feature, research what it does by checking the Ghost changelog or GitHub Repository.
- Create a decision matrix for each feature: Use in Production? Use in Staging? Skip Entirely?
- Enable one Beta feature on a staging site, test it thoroughly, and document the results including any bugs or unexpected behavior.
- Write a recommendation report for a fictional client explaining which Labs features they could safely use on their production site.
This exercise prepares you to evaluate experimental features confidently for real projects.
What's Next
Now that you understand Ghost Labs, learn how to migrate content from other platforms into Ghost:
Continue to Lesson 9: Ghost Migration — Import content from WordPress, Medium, and other platforms into Ghost.
Related lessons:
- Ghost Admin — Admin dashboard settings and configuration
- Migrating from WordPress — Step-by-step migration guide
Built by the developers of DodaTech
Doda Browser, DodaZIP & Durga Antivirus Pro