IEC 62304 Explained: Software Safety Classes A, B, and C

Talk to an Expert
Author Image

Sunil Kumar

Last Update on : July 17, 2026

IEC 62304

Table of ContentsToggle Table of Content

Summarize with AI

Add us as a preferred source on Google >>

Table of ContentsToggle Table of Content

IEC 62304 is the international standard for medical device software lifecycle processes, and it sorts software into three safety classes by the severity of harm a failure could cause: Class A, where no injury is possible; Class B, where non-serious injury is possible; and Class C, where death or serious injury is possible. The class you land in decides how much of your development process you must document and verify, which makes classification the single most consequential early decision in a regulated software project.

This guide explains what IEC 62304 is, what each class means, how to determine your class, and what each one requires. It is written for the engineering and regulatory leads who scope medical device software development and have to decide, early and defensibly, how much rigor a given product demands.

What is IEC 62304?

IEC 62304 is an internationally recognized standard, published by the International Electrotechnical Commission and recognized by the US FDA, that defines the lifecycle processes for developing and maintaining safe medical device software. It applies both to standalone Software as a Medical Device and to software embedded inside a physical device, and it covers the full lifecycle from development planning through maintenance of released software.

The current version is IEC 62304:2006 together with its Amendment 1:2015. Two points are worth knowing because they signal how the standard actually behaves. First, its only normative reference is ISO 14971, the standard for medical device risk management, so classification under IEC 62304 is fundamentally a risk-based decision. Second, IEC 62304 assumes you already operate an ISO 13485 quality management system and an ISO 14971 risk management process; it does not recreate them.

It is equally useful to know what IEC 62304 does not cover. Final device validation and clinical evaluation live in other standards and regulations. IEC 62304 governs the engineering of the software itself, which is why it sits at the heart of medical device software development but never stands alone.

What processes does IEC 62304 define?

IEC 62304 organizes the software lifecycle into five processes, and how much rigor you apply to each one scales with your safety class. These five processes are the backbone of the standard.

  • Software development (clause 5): planning, requirements, architecture, detailed design, implementation, integration, testing, and release.
  • Software maintenance (clause 6): handling changes, feedback, and defects after release with the same discipline as original development.
  • Software risk management (clause 7): the software-specific extension of the ISO 14971 risk process.
  • Software configuration management (clause 8): controlling versions, changes, and builds so every release is traceable.
  • Software problem resolution (clause 9): recording, analyzing, and resolving defects across the entire lifecycle.

A well-run medical device software development program treats these five as one connected system rather than separate boxes to tick, because the standard expects them to reference and feed one another.

Who needs to follow IEC 62304?

IEC 62304 applies to any manufacturer developing software that is itself a medical device or that is embedded inside one. It is recognized by the US FDA as a consensus standard, aligns with the software expectations of the EU Medical Device Regulation, and has been adopted as national standards in many markets, for example EN 62304 in Europe and ANSI/AAMI/IEC 62304 in the United States. Following the standard is not a legal mandate in itself, but it is the most widely accepted way to show a regulator that your software lifecycle is under control. For most companies scoping medical device software development, the practical question is not whether IEC 62304 applies, but which class applies and how much rigor that entails.

What are the IEC 62304 software safety classes?

IEC 62304 defines three software safety classes, each based on the severity of injury a software failure could cause. The classification is an input to your development rigor, not a judgment on code quality.

Class Definition (severity of harm) What it signals for development
Class A No injury or damage to health is possible. The lightest process. Document the software requirements and the software release.
Class B Non-serious injury is possible. Adds the software architecture and software verification, with test coverage of requirements.
Class C Death or serious injury is possible. Adds detailed design. The most rigorous documentation and verification across the lifecycle.

A Class C classification does not mean your software is dangerous or poorly built. It means that if a failure did occur, the consequences could be severe, so the process that produces the software must be held to the highest standard. The class is the input that sets your rigor, not an output of how good your engineering is.

How do you determine your IEC 62304 safety class?

You determine your class from the most severe harm a software failure could cause, after accounting for risk control measures outside the software itself. In practice the assessment runs in four steps.

  • Identify the hazardous situations the software could contribute to, working from your ISO 14971 risk analysis.
  • Assess the severity of the resulting harm. IEC 62304 assumes a software failure will occur, fixing the probability of software failure at 100 percent, so classification turns on how severe the harm could be, not on how unlikely you believe a bug is.
  • Account for external risk controls such as hardware interlocks or independent alarms. If a control outside the software prevents the hazardous situation from causing harm, it can lower the class.
  • Assign the class from the worst-case severity that remains after those external controls are considered.

A short worked example makes this concrete. A symptom-tracking journal that only stores what a user types cannot, by itself, cause injury, which points toward Class A. An application that calculates an insulin dose and presents it for the patient to act on could contribute to serious harm if it miscalculated, which points toward Class C unless an independent check outside the software reliably catches the error first. Same broad category of product, very different class, because the severity of a failure differs.

Two points trip teams up. First, you cannot argue your way to a lower class by claiming a software failure is improbable, because IEC 62304 assumes the probability of a software failure is 100 percent. What you can legitimately do is account for risk control measures outside the software that stop a failure from reaching the patient. Second, not all medical device software is Class C. Over-defaulting to Class C is one of the most common and most expensive classification mistakes, for reasons the insight below explains.

What does each IEC 62304 class require?

IEC 62304 class

The higher the class, the more of the development process you must document and verify, and the requirements build cumulatively. This is the point where an abstract classification turns into real budget and schedule.

  • Class A requires you to document the software requirements and the software release.
  • Class B adds the software architecture and software verification, including test coverage that traces to requirements.
  • Class C adds the detailed software design, the most granular documentation the standard asks for.

One detail that surprises teams: since Amendment 1:2015, system-level testing applies from Class A upward, so even the lightest class is not a documentation-free zone. Because class is the primary driver of effort, it is also the primary driver of cost, which is covered in depth in our guide to how much medical device software development costs. Getting the class right early is the cheapest decision you will make on the whole program.

Not sure whether your software is Class A, B, or C? We can help you classify it and document the rationale.

Can different parts of the software have different classes?

Yes. IEC 62304 lets you classify software items and units separately, but the highest class among the components sets the class of the whole system unless you can document proper segregation between them. This decomposition principle is one of the most practically valuable parts of the standard.

The commercial significance is large. A product often has one small, high-risk function surrounded by a much larger body of lower-risk code. If you can isolate the high-risk portion and demonstrate that a failure there cannot propagate to the rest, you can hold most of the codebase to a lower class and carry a lighter documentation burden across it. That is a legitimate way to reduce effort in medical device software development without reducing safety. For instance, a patient-facing dashboard that is architecturally isolated from a higher-risk dosing-calculation module can often remain at a lower class, provided the boundary between them is genuinely enforced and documented.

The catch is that the segregation has to be real and documented, not merely asserted. Auditors will look for evidence that the isolation actually prevents fault propagation. Claimed segregation that cannot be demonstrated is worse than none, because it invites findings during review.

What is SOUP in IEC 62304?

SOUP stands for Software of Unknown Provenance: software you did not develop under IEC 62304, such as third-party libraries, an operating system, or legacy code you inherited. The term matters because you remain responsible for the risk of software you did not write.

For each piece of SOUP, IEC 62304 expects you to define the requirements it must meet, identify its known anomalies, and evaluate how its potential failures could contribute to a hazardous situation. For example, an unpatched flaw in a third-party networking library is a risk you own even though you did not write the code. In modern development, where a device may depend on dozens of open-source and commercial components, unmanaged SOUP is one of the most common audit findings. Treating SOUP as a first-class risk item, rather than an afterthought, is a hallmark of mature medical device software development.

What does IEC 62304 require after a device ships?

IEC 62304 covers the entire lifecycle, so its requirements do not stop at release. The maintenance and problem-resolution processes govern how you handle changes and defects once the software is in the field. For many teams this post-release obligation is the most underestimated part of the standard.

  • The maintenance process requires a maintenance plan, analysis of reported problems and user feedback, and implementation of changes with the same rigor and re-verification the original class demanded.
  • The problem-resolution process requires recording each problem, investigating its cause, evaluating its safety impact, and tracking it to closure with an auditable trail.

For higher-class software this continuing discipline is substantial, and it is a real and recurring part of the total cost of a medical device software development program, not a one-time expense at launch.

How does IEC 62304 relate to ISO 14971, ISO 13485, and the FDA QMSR?

IEC 62304 does not stand alone: it relies on ISO 14971 for risk management, assumes an ISO 13485 quality management system, and operates inside the FDA’s Quality Management System Regulation framework. Understanding those relationships is what separates a checklist reading of the standard from a working one.

  • ISO 14971 is the normative reference. Your safety class is a risk-based conclusion drawn from the risk analysis, so the two standards are inseparable in practice.
  • ISO 13485 is the assumed quality management system. As of February 2, 2026, the FDA’s Quality Management System Regulation incorporates ISO 13485:2016 by reference, replacing the former Quality System Regulation.
  • Together these feed your submission documentation, including the design and development file (the record that replaced the legacy Design History File under the QMSR) that a regulator reviews.

Does the IEC 62304 class match FDA or EU MDR risk classes?

No. The IEC 62304 safety class, the FDA documentation level, and the EU MDR device class are three separate systems with different criteria, and one cannot be substituted for another. They often correlate, but treating them as interchangeable is a frequent and costly error.

System Categories Based on
IEC 62304 software safety class A, B, C Severity of harm from a software failure.
FDA documentation level Basic, Enhanced Risk of the device software function in the context of the device’s intended use.
EU MDR device class I, IIa, IIb, III Overall risk of the device to the patient and user.

The FDA’s documentation levels are worth a specific note. In its 2023 guidance, Content of Premarket Submissions for Device Software Functions, the FDA replaced the older Major, Moderate, and Minor “level of concern” categories with just two levels, Basic and Enhanced, determined by the risk of the software in the context of the device as a whole. A Class C safety classification often correlates with an Enhanced documentation level and a higher MDR class, but you must evaluate each system on its own criteria rather than mapping one onto another.


Ailoitte
/
Insight

Across the regulated products we have delivered, the most expensive IEC 62304 mistakes are made at the very start, not at submission. Two failure modes recur. The first is over-classifying the entire system to Class C because one small component is high-risk, when documented segregation would have kept the bulk of the codebase at a lower class and saved a large share of the documentation effort. The second is under-classifying to move faster, then discovering the gap during an audit or premarket review and paying for it twice in rework and re-testing.
The teams that get this right follow one rule: classify early, segregate deliberately, and treat the classification rationale itself as a documented deliverable that an auditor can follow. We build the classification and the ISO 14971 risk file at the requirements stage rather than reverse-engineering them before a submission, which is also how our AI Velocity Pods keep a regulated build both fast and defensible.

Is IEC 62304 changing?

A second edition of IEC 62304 is in development, and it has been reported to move toward two safety classes instead of three, but it is still a draft and not in force. Until it is published and adopted, classification continues to use the three classes A, B, and C described here. It is worth tracking, because a change to the class structure would ripple straight through the documentation each project owes, but it is not something to design around today.

Classifying a new device and want a second opinion on the rigor it needs? Share your intended use and we will map the class and the standards that apply.

Ailoitte builds medical device software development to IEC 62304 and ISO 14971, holds ISO 27001, ISO 9001, and SOC 2 Type II certifications, and has delivered 300+ products across 21 countries.
Explore our healthcare software development practice or see delivered work in the portfolio.

FAQs

What are the three IEC 62304 safety classes?

Class A, where no injury or damage to health is possible; Class B, where non-serious injury is possible; and Class C, where death or serious injury is possible. The class is set by the severity of harm a software failure could cause.

Is IEC 62304 mandatory?

IEC 62304 is a voluntary consensus standard, not a law, but it is recognized by the FDA and widely expected in the EU and other markets. Following it is the most practical route to demonstrating that your software lifecycle meets regulatory expectations.

How is the IEC 62304 class decided?

By the most severe harm a software failure could cause, assessed after external risk control measures such as hardware interlocks are considered. The standard assumes the software failure itself will occur, so the class turns on the severity of the harm, not on how likely the failure is.

Is all medical device software Class C?

No. Defaulting everything to Class C is a common and costly mistake. Software is classified by the severity of possible harm, and documented segregation can keep lower-risk components at a lower class than the highest-risk part of the system.

What is the difference between an IEC 62304 class and an FDA documentation level?

They are separate systems. IEC 62304 uses Classes A, B, and C based on severity of harm. The FDA uses Basic and Enhanced documentation levels based on the device’s risk in context. They correlate but are not interchangeable.

What is SOUP in IEC 62304?

SOUP is Software of Unknown Provenance: code you did not develop under IEC 62304, such as third-party libraries, operating systems, or legacy code. You must define its requirements, identify known anomalies, and evaluate the risk of its failure.

Discover how Ailoitte AI keeps you ahead of risk

Sunil Kumar

Sunil Kumar is CEO of Ailoitte, an AI-native engineering company building intelligent applications for startups and enterprises. He created the AI Velocity Pods model, delivering production-ready AI products 5× faster than traditional teams. Sunil writes about agentic AI, GenAI strategy, and outcome-based engineering. Connect on LinkedIn

Share Your Thoughts

×
  • LocationIndia
  • CategoryJob Portal
Apna Logo

"Ailoitte understood our requirements immediately and built the team we wanted. On time and budget. Highly recommend working with them for a fruitful collaboration."

Apna CEO

Priyank Mehta

Head of product, Apna

Ready to turn your idea into reality?

×
  • LocationUSA
  • CategoryEduTech
Sanskrity Logo

My experience working with Ailoitte was highly professional and collaborative. The team was responsive, transparent, and proactive throughout the engagement. They not only executed the core requirements effectively but also contributed several valuable suggestions that strengthened the overall solution. In particular, their recommendations on architectural enhancements for voice‑recognition workflows significantly improved performance, scalability, and long‑term maintainability. They provided data entry assistance to reduce bottlenecks during implementation.

Sanskriti CEO

Ajay gopinath

CEO, Sanskritly

Ready to turn your idea into reality?

×
  • LocationIndia
  • CategoryFinTech
Banksathi Logo

On paper, Banksathi had everything it took to make a profitable application. However, on the execution front, there were multiple loopholes - glitches in apps, modules not working, slow payment disbursement process, etc. Now to make the application as useful as it was on paper in a real world scenario, we had to take every user journey apart and identify the areas of concerns on a technical end.

Banksathi CEO

Jitendra Dhaka

CEO, Banksathi

Ready to turn your idea into reality?

×
  • LocationIndia
  • CategoryHealthTech
Banksathi Logo

“Working with Ailoitte was a game-changer for us. They truly understood our vision of putting ‘Health in Your Hands’ and brought it to life through a beautifully designed, intuitive app. From user experience to performance, everything exceeded our expectations. Their team was proactive, skilled, and aligned with our mission every step of the way.”

Saurabh Arora

Director, Dr.Morepen

Ready to turn your idea into reality?

×
  • LocationIndia
  • CategoryRetailTech
Banksathi Logo

“Working with Ailoitte was a game-changer. Their team brought our vision for Reveza to life with seamless AI integration and a user-friendly experience that our clients love. We've seen a clear 25% boost in in-store engagement and loyalty. They truly understood our goals and delivered beyond expectations.”

Manikanth Epari

Co-Founder, Reveza

Ready to turn your idea into reality?

×
  • LocationIndia
  • CategoryHealthTech
Protoverify Logo

“Ailoitte truly understood our vision for iPatientCare. Their team delivered a user-friendly, secure, and scalable EHR platform that improved our workflows and helped us deliver better care. We’re extremely happy with the results.”

Protoverify CEO

Dr. Rahul Gupta

CMO, iPatientCare

Ready to turn your idea into reality?

×
  • LocationIndia
  • CategoryEduTech
Linkomed Logo

"Working with Ailoitte was a game-changer for us. They truly understood our vision of putting ‘Health in Your Hands’ and brought it to life through a beautifully designed, intuitive app. From user experience to performance, everything exceeded our expectations. Their team was proactive, skilled, and aligned with our mission every step of the way."

Saurabh Arora

Director, Dr. Morepen

Ready to turn your idea into reality?

×
Clutch Image
GoodFirms Image
Designrush Image
Reviews Image
Glassdoor Image