
FHIR R4, R5 or R6: which is right for your project?
Build on FHIR R4 today. Epic, Oracle Health (Cerner), payer patient-access APIs and US Core all target R4, and its core resources are normative. R5, published in 2023, has thin EHR support. R6 is still in ballot, so track it for planning only.
What is the difference between FHIR R4, R5 and R6?
Quick answer
Choose FHIR R4 for anything that must exchange data with EHRs, payers or US regulatory APIs, because that is where US Core and vendor support sit. Use R5 only in closed systems where you control both ends and need a specific R5 feature. Treat R6 as a roadmap item until HL7 publishes it.
| Criterion | R4 | R5 / R6 |
|---|---|---|
| Published | R4 in 2019 (4.0.1) | R5 in March 2023; R6 still in ballot |
| Subscriptions | Topic-based subscriptions through a backport guide | Topic-based subscriptions in the core spec (R5) |
| Status | Normative core, stable | R5 published; R6 in development |
| EHR support | Broad (Epic, Oracle, etc.) | Limited / emerging |
| US regulatory target | Yes (USCDI, CMS) | No (not yet) |
| US Core profiles | Built on R4 | Catching up |
| Tooling & libraries | Most mature | Improving |
| Best for | Production interoperability | Closed systems, forward design |
What are FHIR R4, R5 and R6?
What is R4
FHIR R4 (2019) is the first release with normative core resources and the industry baseline. Epic, Oracle Health and the US patient-access ecosystem target R4, and US Core profiles build on it. When a partner says "FHIR" without a version, they mean R4.
What is R5 / R6
FHIR R5 (2023) improves many resources, workflow and subscriptions, but production EHR adoption is limited and it isn't the US regulatory target. R6 is still in ballot. Both show where the standard is heading: useful to design toward, risky to ship on today.
Key differences
Real-world support is the deciding factor
The version debate is less about features than about who you have to talk to. Because Epic, Oracle Health, payers, and US regulations target R4, that's where interoperability actually happens. Choosing R5 for an externally-integrated product means fighting the ecosystem for marginal gains.
What R5 actually adds
R5 tightens many resources, matures workflow patterns, and significantly improves the Subscriptions framework (topic-based, more reliable event delivery). If you control both ends of an integration and genuinely need those improvements, R5 can be worth it, but you lose the broad interoperability R4 gives you.
Designing for the future
The right hedge isn't picking R5 early: it's isolating FHIR version specifics behind your own domain model and mapping layer, so moving R4→R5 later is a bounded upgrade. Avoid leaking raw version-specific resource shapes throughout your codebase.
When should you choose R4, R5 or R6?
When to use FHIR R4
- You need to integrate with real EHRs and payer APIs today.
- You're meeting US regulatory requirements (USCDI, CMS interoperability, patient access).
- You want maximum tooling, library, and community support.
- You value stability and normative resources over the newest features.
When to use FHIR R5 / R6
- You're building a closed system with no external EHR dependency and want R5 features.
- You need a specific R5 improvement (e.g. refined Subscriptions) and control both ends.
- You're prototyping or contributing to the standard and want the latest resources.
- You're planning architecture now for a multi-year horizon and want R6 on the roadmap.
How do you move from R4 to R5 later?
Keep FHIR version details behind your own domain model and mapping layer, so an upgrade changes the mappers, not the whole codebase.
Re-validate every profile you rely on after the move, and run old and new endpoints side by side until partners switch.
Which sources does this comparison rely on?
- HL7 publishes FHIR R4 as version 4.0.1, dated October 30, 2019, with a mix of normative and trial-use content (HL7 FHIR R4, hl7.org)
- FHIR R5, version 5.0.0, was published on March 26, 2023 as a trial-use release and is HL7's current published FHIR version (HL7 FHIR R5, hl7.org)
- As of October 2026, HL7's version directory lists every FHIR R6 release as a draft; the latest ballot, the second full R6 ballot (6.0.0-ballot5), is dated July 17, 2026 (HL7 FHIR version directory, hl7.org)
- 45 CFR 170.215 adopts HL7 FHIR Release 4.0.1 as the API base standard for certified health IT, profiled by the HL7 FHIR US Core Implementation Guide (eCFR)
Frequently Asked Questions
Not sure which fits your build?
Tell us about your product, integration targets, and timeline. We'll map the trade-offs to your context and recommend the path that gets you to a compliant launch fastest.