Opsgenie Migration: Deadline, Options and Cutover
In short
Atlassian ends support for Opsgenie on 2027-04-05. On that date access is shut off, the product is no longer accessible, and customer data not moved to Jira Service Management is deleted. So the work is to inventory what you run today, decide whether you stay inside Atlassian or leave, and finish a rehearsed cutover before that date rather than on it.
Key takeaways
- Opsgenie support ends on 2027-04-05; on that date access is shut off and any data not moved to Jira Service Management is deleted.
- New sales ended on 2025-06-04, and since then you cannot change Opsgenie edition or add sites, which removes some of the usual ways to buy time.
- Atlassian documentation has also pointed teams to Compass for developer alerting, but Compass is itself being phased out in favour of DX, so it is not a stable landing place.
- Schedules, escalations and most integration types are auto-synced into Jira Service Management, but the Edge Connector, ChatOps and Atlassian-owned phone numbers all need manual work.
- A documented list of capabilities does not survive the move, including the Incident Command Center, conference bridges, incident templates and response roles, Groups, Heartbeats V1 and Policies V1.
- The documented schedule export produces an .ics file, which carries the calendar but not the escalation semantics, so the operating model has to be rewritten rather than copied.
- Run the old and new systems in parallel for at least one full rotation with only one of them able to reach a phone, and keep a written log of every difference you find.
- Rollback stops being possible once the Opsgenie side is decommissioned, so keep it configured and paused rather than deleted until the new path has carried a real page.
What changed, and by when
Opsgenie is on a published end-of-life schedule. Three dates matter, each stated in Atlassian's own documentation.
| Date | What Atlassian states happens | Documented in |
|---|---|---|
| 2025-03-04 | Atlassian announced that Opsgenie would no longer be available for purchase. | Opsgenie Licensing |
| 2025-06-04 | New sales discontinued. From this date it is no longer possible to upgrade or downgrade your Opsgenie edition, or to add more sites. | Opsgenie Licensing |
| 2027-04-05 | End of support. Access is shut off and the product is no longer accessible. | Choose the right path and schedule migration; Opsgenie Licensing |
Existing customers continue without interruption between those dates. You can still buy seats up to 2027-04-05, and still renew, but only if the term concludes before that date. The 2025-06-04 change removes the usual levers for buying time: no edition change to unlock a feature that would simplify the move, and no extra site to stage it on.
Decision tree
One branch matters. The rest is consequence.
Are you staying inside the Atlassian ecosystem? If yes, the destination is Jira Service Management. The current migration-options documentation lists only Jira Service Management plans, mapped from your existing edition: Opsgenie Free to JSM Free, Essentials to Standard, Standard to Premium, and Enterprise to either Premium or Enterprise. Read the deprecation table below first, because staying inside the ecosystem is not the same thing as keeping what you have.
If no, you are running a replacement selection under a deadline. Inventory first, shortlist second. The failure mode is choosing from a feature page and finding the gap during the cutover test, when the calendar has stopped being flexible.
Is the second Atlassian destination viable? Atlassian's Opsgenie documentation has also directed teams to Compass for developer alerting, with Jira Service Management framed as the path for IT operations. Anyone who picked Compass on that basis needs this.
When, not whether. Set an internal target well before 2027-04-05. Subtract a full rotation of parallel running, a cutover test, a repair window, and any change freeze you observe. What remains is the runway.
Inventory checklist
Do this before evaluating anything, Jira Service Management included. It is the one artefact that survives whichever way the decision goes. Record an owner beside each item.
- Schedules. Rotation shape and length, timezone, handoff time, and who is actually in it. Note where one person wears two hats.
- Escalation policies. Each step, its delay, target, channel and stop condition. Note which have never fired.
- Teams and groups. Membership, and specifically anything modelled as a Group rather than a team.
- Inbound integrations. Every alert source, its type, its key or endpoint, and the payload fields routing depends on.
- Outbound and bidirectional integrations. Ticketing, chat, status pages, anything receiving from Opsgenie or syncing state back.
- API and infrastructure-as-code dependencies. Terraform, scripts, CI jobs and internal tools holding a stored key. Grep your repositories for the API hostname; it finds more than asking people does.
- Contact methods and notification rules. Per person: numbers, devices, channel order, delays, quiet hours. This decides whether a page reaches a sleeping human, and it is most often reconstructed from memory.
- Heartbeats. What sends each one, its interval, and what should happen on expiry. Note which are V1.
- Routing rules. Global and team routing, time-based rules, and anything that suppresses, deduplicates or reshapes alerts. Note which are V1.
- Historical data and audit requirements. What you must retain, in what format, and who signs off that a copy suffices.
- Custom actions. Anything driven by the Edge Connector, custom scripts, or automation triggered from an alert.
What Atlassian migrates for you, and what it does not
For the Standard, Premium and Enterprise paths, Atlassian's feature-changes documentation is specific about what carries over untouched and what needs hands on it.
| Item | Status on migration to Jira Service Management | Your follow-up |
|---|---|---|
| All schedules, global and team | Auto-synced. No additional configuration required. | Verify the resolved on-call person at a handoff. |
| All escalations, global and team | Auto-synced. No additional configuration required. | Verify timeouts by firing an alert, not by reading config. |
| Incoming, global, outbound and bidirectional, and advanced-customization integrations | Auto-synced. No additional configuration required. | Auto-synced is not verified. Test each source. |
| Opsgenie Edge Connector (OEC) | Must be reconfigured as Jira Edge Connector (JEC) after migration. | Scheduled work, with a deployment, afterwards. |
| ChatOps for Slack, Microsoft Teams and Zoom | Must be re-authenticated. | Someone with workspace permissions free on the day. |
| Incoming call routing | Auto-synced for Twilio-owned numbers. Atlassian-owned numbers require manual porting before migration. | Porting has lead time. Identify your numbers early. |
| Incident Command Center, conference bridges | Deprecated. Not available after migration. | Redesign the major-incident process, do not remap it. |
| Incident templates and response roles | Deprecated, replaced by Incident Configurations. | Rebuild and re-train. No like-for-like mapping. |
| API Key Management | Deprecated, replaced by Atlassian Authentication. | Every stored credential is reissued. |
| Edge Encryption | Deprecated, replaced by BYOK. | A security review item, not a configuration item. |
| Groups | Deprecated, replaced by teams. | Re-model membership before you migrate. |
| Team-level activity streams, MSP integrations, Heartbeats V1, Policies V1, SMS for stakeholders | Deprecated. Not available after migration. | Per item: replace, drop, or accept the loss in writing. |
On sequencing, Atlassian's pre-migration guidance is advisory rather than mandatory: customers should consider upgrading deprecated global integrations, Heartbeats V1, Groups or Policies V1. Do it anyway. These are the items whose behaviour changes, and finding that out during a parallel run costs far less than finding it out during an incident.
Export: what you can actually get out
Atlassian documents a schedule export: the request exports a schedule to a .ics file, at
GET https://api.opsgenie.com/v2/schedules/:identifier.ics. The same Schedule API page documents List
Schedules, Get Schedule, and Get Schedule Timeline, which together let you enumerate what exists and resolve
who is on call across a window.
That is useful, and it is less than it sounds. An .ics file is a calendar: it says a named person covers a
named window. It does not carry the escalation policy attached to that schedule, the timeout before step two,
each person's channel order, the routing rule that sent the alert to this team, or the reasoning behind any
of it. Get Schedule Timeline can check that a new system resolves the same on-call person as the old one,
but it is not a way to recover intent.
The calendar can be copied; the operating model has to be rewritten. Budget time to write the escalation logic down explicitly before rebuilding it anywhere. Teams routinely find here that the policy in the tool and the policy people believe they follow are not the same policy.
Requirements matrix
Score every candidate, Jira Service Management included, against the same columns. Fill it in yourself; the weights are yours, not a vendor's.
| Column | The question it settles | Evidence that counts |
|---|---|---|
| Out-of-hours delivery | Does a page reach a locked, silenced phone at 03:00? | A page received on a real device. |
| Schedule shape | Follow-the-sun, split weeks, DST changes? | Your most awkward schedule, rebuilt. |
| Escalation depth | How many steps, what timeouts, where does it stop? | An alert left unacknowledged to the end. |
| Overrides and handoff | Can someone swap a shift without an administrator? | A non-administrator doing it unaided. |
| Routing and noise control | Routing, grouping and suppression without glue code? | A week of real payloads, replayed. |
| Integration coverage | Every source natively, both directions, and at what gap cost? | The count needing custom work, and its owner. |
| API and infrastructure-as-code | Reviewable as code, or drifting by hand? | One team provisioned from a repository. |
| Heartbeats | What notices when a system goes quiet, and who is paged? | A stopped heartbeat, and the measured delay. |
| Access control and audit | Who can change a schedule or silence an alert, and is it recorded? | An export an auditor accepts. |
| Data residency and retention | Where does alert data live, and how do you get it out? | An export path you have run. |
| Failure of the pager itself | When paging is down, how do you find out and who is reached? | A written answer naming a person and a channel. |
| Migration and exit cost | How much transfers now, and what could you take away later? | Inventory rows needing manual work; an export run before you sign. |
Two rows get skipped in practice: failure of the pager itself, because it feels hypothetical, and exit cost, because it feels pessimistic mid-selection. The Opsgenie end-of-life argues for both.
Dual-run plan
Parallel running means both systems receive the same alerts while only one may reach a phone. That constraint is the design. If both can notify, you have built a double-paging machine, and responders start ignoring one source, usually the new one.
Avoiding double pages. Either the new system ingests everything with every notification rule resolving to in-app only, or it notifies one volunteer whose job is to compare. Never enable both escalation paths for the same service on the same day, and write down which system is authoritative where the on-call person sees it.
How long. At least one complete rotation, so the run covers a weekend, a handover and every person in the roster. Shorter runs test configuration but not people, devices or do-not-disturb settings.
What to watch, roughly in order of how often it goes wrong.
- Routing parity. For every alert in the old system, did the same one arrive in the new, on the same team?
- Occupant parity. At each handoff, do both resolve the same person? Check a DST transition and any schedule spanning timezones.
- Volume parity. Alerts per source per day, both sides. A quieter source in the new system is usually a broken integration, not an improvement.
- Deduplication. Does a flapping source produce one alert or forty on each side?
- Close and auto-resolve. When the source recovers, does the alert close, or linger for cleanup?
- Heartbeat expiry. Stop one deliberately and confirm the new system notices in the expected interval.
Keep a difference log: one row per discrepancy, its cause, its resolution. Move alert sources in severity order, lowest first, so early mistakes happen on alerts nobody is woken by.
Controlled cutover test
Do not cut over on the strength of a configuration review. A person must observe each step rather than infer it from a log.
- Fire from a real source. An actual integration, not the test button, which verifies the notification service rather than the path.
- Confirm arrival and routing. The alert carries the payload fields your routing depends on and lands on the intended team.
- Confirm step one reaches a phone. At night, on a locked and silenced device, on cellular rather than office wifi.
- Let it escalate. Do not acknowledge. Confirm the secondary is reached after the timeout, through their own channels.
- Acknowledge, and confirm escalation stops. A policy that keeps paging after acknowledgement is one nobody trusts twice.
- Resolve from the source. Confirm the alert closes without manual intervention.
- Exercise an override. Hand a shift over at short notice and repeat step three against the new occupant.
- Exercise a dead-man path. Stop a heartbeat and confirm the resulting page reaches a person.
- Record the evidence. Who tested, on which device and network, when, and the delay at each step.
The pass criterion is that a named person observed every step. A step skipped because it was inconvenient to test at night has not been tested.
Rollback
Rollback means different things at different stages. Write them down before you start, rather than discovering them under pressure.
Before the migration runs. Nothing has changed. Rollback is free.
During the parallel run. The old system is authoritative and the new one observes. Rollback is disabling the new system's ingestion, at near-zero cost. This is why the run should last longer than feels necessary.
After cutover, before decommissioning. The new system is authoritative, and the old configuration still exists with its integration keys intact. Rollback means re-pointing alert sources at the old endpoints and re-enabling its notification rules. That works only if you did not delete or rotate the old keys at cutover, so keep them disabled rather than deleted.
After decommissioning. Once the old configuration is deleted, its keys rotated away, or the subscription lapsed, there is nothing to return to. Rotating credentials is the practical point of no return, and it tends to happen earlier than intended because a security review asks for it.
After 2027-04-05. No rollback exists in any form. Access is shut off, the product is no longer accessible, and unmigrated data is deleted.
A workable rule: keep the old side configured and paused until the new path has carried a real production page at an unsociable hour and one full rotation has closed with an empty difference log. Then decommission deliberately, on a working day, with your export already taken and verified.
Review dates
Vendor facts move, and this page is a snapshot rather than a feed. Every source below carries the date this project last checked it, 2026-09-02, and that is the honest limit of what is claimed here.
Two cautions are specific to this topic. No Atlassian Opsgenie page exposes a last-updated date, so there is no per-page freshness to report from the vendor; the only available date is the date a human checked. And the documentation is inconsistent with itself, in that the Compass-specific Opsgenie migration pages no longer resolve while the left-hand navigation still links to them.
Before committing budget, headcount or a contract, re-check the primary sources directly rather than relying on this page, and record the date you checked beside the decision.
Frequently asked
- How long do we actually have?
- The hard date is 2027-04-05, but that is the date the product stops working, not the date to aim for. Work backwards: a full rotation of parallel running, a controlled end-to-end paging test, and time to fix what the test finds. Teams that also observe a year-end change freeze lose several usable weeks. Treat the practical deadline as several months earlier than the published one, and write that internal date down where the budget conversation can see it.
- What happens if we do nothing?
- Atlassian states that on 2027-04-05 access to Opsgenie will be shut off, the product will no longer be accessible, and customer data in Opsgenie that has not been moved to Jira Service Management will be deleted. There is no documented grace period. Doing nothing therefore ends with no paging system and no configuration history to reconstruct one from.
- Is Compass a safe destination for our alerting?
- Atlassian documentation has named Compass alongside Jira Service Management for developer alerting, but Atlassian announced on 2026-04-13 that Compass will be phased out and is encouraging Compass customers to transition to DX. Atlassian support states that access will expire at the end of your contract or once Compass is no longer supported, planned for 2027-12-31. Choosing Compass to escape one end-of-life date puts you in front of another one.
- Can we export our configuration and re-import it elsewhere?
- Only partly. Atlassian documents a schedule export that produces an .ics file, plus endpoints to list schedules, get a schedule, and get a schedule timeline. That gives you who is on call and when. It does not give you escalation steps, timeouts, notification rules, routing conditions or integration mappings in a portable form. Expect to re-document the operating model by hand, whichever destination you pick.
- Do we have to clean up deprecated features before migrating?
- Atlassian frames its pre-migration guidance as advisory. The wording is that customers should consider upgrading deprecated global integrations, Heartbeats V1, Groups, or Policies V1, not that it is required. The reason to do it anyway is different: those items appear on the list of things that change or disappear on migration, so cleaning them up first is how you find out whether the move preserves your operating model or quietly reduces it.
Sources
Vendor facts change. Each source below shows the date this page last checked it.
- Choose the right path and schedule migration | Opsgenie | Atlassian Support — Atlassian. Checked 2 September 2026.
- Opsgenie Licensing | Atlassian — Atlassian. Checked 2 September 2026.
- What are my options for migrating from Opsgenie? — Atlassian. Checked 2 September 2026.
- Feature changes and deprecations in Jira Service Management — Atlassian. Checked 2 September 2026.
- The Next Chapter for Compass - Inside Atlassian — Atlassian. Checked 2 September 2026.
- Migrate from Compass to DX | Compass | Atlassian Support — Atlassian. Checked 2 September 2026.
- Schedule API - Opsgenie Docs — Atlassian. Checked 2 September 2026.
Related
- GuideHow to Test an On-Call Paging Path End to End
- GuideEscalation Policies: How to Build a Reliable Fallback Path
- GuideHow to Design an On-Call Schedule That Actually Works
- GuideGrafana OnCall OSS Alternatives After Archival
- ToolEscalation Policy Builder
- ToolOn-Call Readiness Assessment
- TemplateEscalation Policy Worksheet
- TemplateOn-Call Policy Template
- GlossaryEscalation policy
- GlossaryAlert routing
- GlossaryCoverage gap
- GlossaryPaging test
- GlossaryHeartbeat
- GlossaryOverride