Three generations of connector plugs, the first glowing green
    Version Decision Framework

    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.

    CriterionR4R5 / R6
    PublishedR4 in 2019 (4.0.1)R5 in March 2023; R6 still in ballot
    SubscriptionsTopic-based subscriptions through a backport guideTopic-based subscriptions in the core spec (R5)
    StatusNormative core, stableR5 published; R6 in development
    EHR supportBroad (Epic, Oracle, etc.)Limited / emerging
    US regulatory targetYes (USCDI, CMS)No (not yet)
    US Core profilesBuilt on R4Catching up
    Tooling & librariesMost matureImproving
    Best forProduction interoperabilityClosed 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.

    Frequently Asked Questions

    R4 for most teams. Its tooling, libraries and partner support are mature, so there is less custom work to maintain. R5 can pay off in a closed system that needs its newer features.

    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.