openstatus logoPricingDashboard

How to Migrate from Instatus to openstatus

Mar 27, 2026 | by openstatus | [alternative]

Why migrate from Instatus to openstatus

Instatus is a solid status page product. But if you need open-source transparency, built-in synthetic monitoring, or monitoring-as-code workflows, openstatus offers a more complete platform without stitching together separate tools.

Openstatus now supports a one-click import from Instatus, so switching does not mean starting from scratch. Your components, incidents, maintenances, and email subscribers carry over in minutes.

For background on the import feature, see Importing from Statuspage, Betterstack, and Instatus.

What gets imported

The table below shows how Instatus resources map to openstatus.

Instatus resourceopenstatus resourceNotes
Page (name, subdomain, custom domain)Status Page (title, slug, custom domain)One status page created per Instatus page.
Component with group referencesComponent GroupComponents referenced as a group by other components are automatically detected and created as groups. If a referenced group ID does not exist in the component list, a synthetic group is created using the ID as its name and a warning is shown.
ComponentComponent (type: static)All regular components are imported with their name, description, and order. Imported as static type (not linked to a monitor).
IncidentStatus Report + Status Report UpdatesAll incident updates are imported with their timestamps and messages.
Incident statusStatus Report status1:1 mapping: INVESTIGATING to investigating, IDENTIFIED to identified, MONITORING to monitoring, RESOLVED to resolved.
Incident affected componentsStatus Report component linksComponent associations are preserved using source ID matching.
Maintenance (start, duration)Maintenance (from, to)End time is calculated as start + duration (in minutes). If duration is zero or null, from and to are the same. Maintenance update messages are concatenated into a single message field.
Maintenance affected componentsMaintenance component linksComponent associations are preserved.
Email subscriberPage SubscriptionConfirmed status is preserved. Selective component preferences are mapped to the imported components.
Webhook, Slack, Discord, Microsoft Teams, Google Chat, phone subscriberNot importedA warning is shown with the count of skipped subscribers.
MonitorsNot importedInstatus monitors are not part of the import. Set up monitors directly in openstatus after import.

Multi-page accounts

If your Instatus account has multiple pages, the importer fetches all of them by default. To import a specific page, provide the Page ID in the import form. You can find your Page ID in the Instatus API or in the URL when editing a page (instatus.com/app/pages/<page-id>).

Step-by-step walkthrough

1. Get your Instatus API key

Go to your Instatus dashboard, then navigate to Settings and select API. Copy your API key.

Instatus developer settings page showing where to find the API key
Instatus developer settings page showing where to find the API key

2. Open the import tool and preview

In your openstatus dashboard, go to Status Pages and select a page (or create one first). Open the Components tab and scroll down to the Import section.

Choose Instatus as the provider. Paste your API key. Optionally, enter a Page ID if you only want to import a specific page.

Click Preview. Openstatus fetches your Instatus data and shows a summary of what will be imported: pages, component groups, components, incidents, maintenances, and subscribers. Review the summary and any warnings (such as skipped non-email subscribers or missing group references).

Toggle which resource types to include. Click Import. The import runs in seconds for most accounts.

openstatus import form for Instatus with preview summary and import toggles
openstatus import form for Instatus with preview summary and import toggles

What to do after import

Connect monitors. Imported components are static by default. To get automated status updates, create monitors in openstatus and link them to the imported components. Openstatus supports HTTP, TCP, UDP, and DNS checks from multiple global locations.

Verify component groups. Check that the auto-detected group hierarchy matches your original Instatus layout. If a group reference was missing from the component list, a synthetic group was created with the ID as its name -- rename it as needed.

Update DNS. If you use a custom domain for your status page, update your DNS records to point to openstatus. The import carries over your custom domain value, but DNS propagation is on your side.

Notify subscribers. Your email subscribers are imported with their confirmed status preserved. Consider sending an update through openstatus to confirm the new status page URL if it has changed.

Remove the old page. Once you have verified everything works, you can deactivate or delete your Instatus page.

Further reading