Structured Product Labeling: Complete Guide to FDA's SPL Format Requirements
Structured product labeling (SPL) is the FDA-required XML format that all drug manufacturers must use to submit prescription drug, OTC drug, and biological product labeling since 2009. SPL uses Health Level Seven (HL7) standards to create machine-readable labeling documents with semantic tagging (LOINC codes), ingredient identifiers (UNII codes), and structured product information that FDA systems can automatically validate and route to DailyMed. Understanding SPL format, validation requirements, and common error prevention is essential for any regulatory professional preparing drug submissions.
Structured product labeling (SPL) is the FDA-mandated XML-based format for submitting prescription drug labeling, over-the-counter (OTC) drug labeling, and biological product labeling. SPL enables machine-readable, standardized product information exchange between manufacturers and regulatory authorities.
If you're preparing drug labeling for FDA submission, understanding SPL format requirements is not optional. Every prescription drug application (NDA, ANDA, BLA) requires SPL-formatted labeling, and errors in SPL structure or content can delay approval or result in FDA information requests.
The regulatory burden is real: a single SPL validation error can add weeks to your submission timeline, and non-compliant labeling can trigger FDA 483 observations during inspections.
In this guide, you'll learn:
- What structured product labeling is and why FDA requires it
- The complete SPL format specification and XML structure requirements
- How to validate SPL files against FDA requirements before submission
- Common SPL validation errors and how to prevent them
- Step-by-step process for creating compliant SPL documents
- The difference between SPL and other drug labeling formats
What Is Structured Product Labeling?
Structured product labeling (SPL) is an HL7 V3-compliant XML document format developed by Health Level Seven and mandated by the FDA for electronic submission of drug product labeling. SPL encodes prescription drug labels, OTC drug labels, and biological product labels using the HL7 Clinical Document Architecture (CDA) Release 2.0 specification, with required semantic coding using LOINC codes for sections, UNII codes for active ingredients, and FDA-standardized terminology for routes, dosage forms, and NDC codes.
Structured product labeling (SPL) is an XML-based document markup standard developed by Health Level Seven (HL7) and adopted by the FDA for electronic submission of product labeling information. SPL uses the HL7 Clinical Document Architecture (CDA) to create machine-readable, structured representations of drug product information.
Key characteristics of structured product labeling:
- XML-based format that encodes labeling content, metadata, and hierarchical structure
- HL7 V3 compliant using the Clinical Document Architecture Release 2.0 specification
- Mandatory for all FDA drug submissions including NDAs, ANDAs, BLAs, and annual labeling updates
- Supports multiple labeling types including prescribing information, patient package inserts, and medication guides
- Enables automated processing of labeling data by FDA systems, healthcare databases, and clinical decision support tools
The FDA has required SPL format for all prescription drug labeling submissions since June 2009, following the phased implementation timeline established in the 2006 Physician Labeling Rule (PLR).
Why FDA Requires Structured Product Labeling Format
The FDA's mandate for SPL format stems from critical needs in drug safety surveillance, labeling consistency, and public health information access.
Regulatory Background
Prior to SPL implementation, drug manufacturers submitted labeling in unstructured formats (PDF, Microsoft Word) that required manual processing by FDA reviewers. This created several problems:
- Manual data entry errors when FDA staff transcribed labeling into DailyMed
- Delays in making updated labeling information publicly accessible
- Inability to automatically compare labeling across similar products
- Challenges in identifying labeling deficiencies during application review
The FDA's adoption of structured product labeling addresses these issues by requiring machine-readable, standardized format that can be:
- Automatically validated against FDA labeling requirements
- Immediately published to DailyMed upon approval
- Systematically analyzed for safety signal detection
- Programmatically compared across therapeutic classes
Legal Requirements
FDA labeling requirements for SPL are codified in:
- 21 CFR 314.50(l)(2) for NDA applications
- 21 CFR 314.94(a)(8)(iv) for ANDA applications
- 21 CFR 601.14 for BLA applications
- 21 CFR 314.70(b) for annual labeling updates
Failure to submit compliant SPL can result in:
- Refusal to file (RTF) actions
- Complete response letters citing labeling deficiencies
- Regulatory holds on application approval
- Warning letters for commercial products with non-compliant labeling
SPL Format Structure and Technical Specifications
Core SPL Document Components
Every SPL document consists of three primary structural elements:
| SPL Component | Purpose | FDA Requirement |
|---|---|---|
| Document Header | Contains metadata about the labeling document, version, submission date, and responsible parties | MANDATORY - must include unique document ID, version number, effective date |
| Document Body | Contains the actual labeling content organized into sections (indications, dosage, warnings, etc.) | MANDATORY - must follow FDA-specified section ordering and numbering |
| Product Information | Encodes structured data about drug products, ingredients, packaging, and NDC codes | MANDATORY - must include all marketed configurations |
XML Namespace Requirements
SPL documents must declare specific XML namespaces to be valid:
The HL7 V3 namespace (urn:hl7-org:v3) is required for all SPL elements. Any SPL file that does not properly declare this namespace will fail FDA validation at the gateway.
Always validate your XML namespace declarations before submitting. Copy the namespace declaration from FDA-published SPL template examples rather than manually typing it to avoid typos that cause gateway rejections. Most commercial SPL authoring tools auto-generate correct namespaces, but hand-edited files are particularly vulnerable to this error.
Document Header Elements
The SPL header must contain these required elements:
| Element | Description | Example Value |
|---|---|---|
| `<id root="">` | Unique document identifier (UUID) | `2f3a4b5c-1234-5678-9abc-def012345678` |
| `<code code="">` | Document type code from SPL vocabulary | `34391-3` (Human prescription drug labeling) |
| `<effectiveTime value="">` | Date labeling becomes effective | `20260124` (YYYYMMDD format) |
| `<versionNumber value="">` | Sequential version number | `1`, `2`, `3`, etc. |
| `<author>` | Sponsor/manufacturer information | Must include organization name and contact |
Document Body Structure
SPL format organizes labeling content into numbered sections that correspond to the Physician Labeling Rule (PLR) section ordering:
| Section Number | Section Title | LOINC Code | Required For |
|---|---|---|---|
| 1 | Highlights of Prescribing Information | 34391-3 | Prescription drugs |
| 2 | Boxed Warning | 34066-1 | Only if applicable |
| 3 | Recent Major Changes | 43683-2 | If changes in past year |
| 4 | Indications and Usage | 34067-9 | All drug products |
| 5 | Dosage and Administration | 34068-7 | All drug products |
| 6 | Dosage Forms and Strengths | 43678-2 | All drug products |
| 7 | Contraindications | 34070-3 | All drug products |
| 8 | Warnings and Precautions | 43685-7 | All drug products |
| 9 | Adverse Reactions | 34084-4 | All drug products |
| 10 | Drug Interactions | 34073-7 | If applicable |
| 11 | Use in Specific Populations | 43684-0 | All drug products |
| 12 | Clinical Pharmacology | 34090-1 | All drug products |
| 13 | Nonclinical Toxicology | 34083-6 | All drug products |
| 14 | Clinical Studies | 34092-7 | If applicable |
| 15 | References | 44877-3 | If applicable |
| 16 | How Supplied/Storage and Handling | 34069-5 | All drug products |
| 17 | Patient Counseling Information | 42231-1 | All drug products |
SPL Section Encoding
Each section must be encoded with the correct LOINC code to ensure proper display in DailyMed and other downstream systems:
SPL FDA Requirements: What Makes Labeling Compliant
Mandatory Content Requirements
FDA labeling requirements for structured product labeling go beyond just XML format compliance. The content itself must meet specific regulatory standards.
Prescription Drug Labeling (PLR Format)
For prescription drugs approved after June 2001, SPL must follow the Physician Labeling Rule content and format requirements:
- Highlights section limited to 0.5 pages
- Boxed warning (if applicable) must appear in both Highlights and Full Prescribing Information
- Recent Major Changes must include section references and dates
- Table of Contents must be auto-generated from section codes
- Specific population subsections must follow standardized ordering (pregnancy, lactation, pediatric, geriatric)
Established Name and Proper Name
SPL format requires specific encoding of drug names:
| Name Type | SPL Element | Requirement |
|---|---|---|
| Established Name | `<name>` | Required - must match approved labeling |
| Proper Name | `<formCode>` | Required - dosage form designation |
| Brand Name | `<manufacturedProduct>` | Optional - proprietary name |
Product Information Encoding
Beyond the labeling text, SPL must encode structured product data:
Required product elements:
- Active ingredients with UNII codes
- Inactive ingredients (for certain product types)
- Dosage form (using FDA dosage form vocabulary)
- Route of administration (using FDA route vocabulary)
- Product and package NDC codes
- Imprint codes (for solid oral dosage forms)
Example active ingredient encoding:
How to Create SPL Documents: Step-by-Step Process
Step 1: Select the Appropriate SPL Document Type
Different submission types require different SPL document type codes:
| Submission Type | SPL Document Code | Document Type Name |
|---|---|---|
| Prescription drug | 34391-3 | Human Prescription Drug Labeling |
| OTC drug | 34393-9 | Human OTC Drug Labeling |
| Biological product | 51726-8 | Prescription Biological Product Labeling |
| Generic drug (ANDA) | 34391-3 | Human Prescription Drug Labeling |
| Abbreviated labeling | varies | Depends on product type |
Step 2: Generate Unique Document Identifiers
Every SPL document requires a globally unique identifier (GUID) for:
- The document itself (
in header) - Each section (
in section) - The set ID that links all versions of the same labeling
Best practice: Use UUID version 4 format: 550e8400-e29b-41d4-a716-446655440000
Many SPL authoring tools auto-generate these IDs, but manual creation requires UUID generation following RFC 4122.
Step 3: Structure Content into Required Sections
Map your labeling content to the mandatory section structure:
- Review approved labeling (for supplements/amendments) or draft labeling (for original applications)
- Identify all required sections based on product type and application type
- Assign LOINC codes to each section from the FDA-published SPL section vocabulary
- Nest subsections properly using
elements - Tag all cross-references using
elements
Create a mapping spreadsheet that links your approved labeling sections to required LOINC codes before you start XML authoring. This single document will serve as your validation checklist and prevent missing-section errors that cause gateway rejections. Include columns for section title, LOINC code, whether it's required for your product type, and whether you've completed the SPL encoding-this systematic approach catches gaps early.
Step 4: Encode Active Ingredients with UNII Codes
The FDA requires all active ingredients to be tagged with Unique Ingredient Identifiers (UNII):
Where to find UNII codes:
- FDA Global Substance Registration System (GSRS): https://gsrs.ncats.nih.gov/
- Search by ingredient name, CAS number, or chemical structure
When searching the FDA GSRS for UNII codes, always note whether you need the code for the salt form or base form of your ingredient-these have different UNII codes. For example, metformin HCl and metformin hydrochloride are sometimes listed separately. Check your approved labeling to see which salt form was authorized, then use the matching UNII code in your SPL.
Common UNII encoding errors:
- Using CAS numbers instead of UNII codes
- Incorrect UNII for salt vs. base forms
- Missing codeSystem attribute (
2.16.840.1.113883.4.9)
Step 5: Validate SPL Against FDA Requirements
Before submission, all SPL documents must pass multiple validation layers:
| Validation Type | What It Checks | Tools |
|---|---|---|
| XML Schema Validation | Validates XML syntax and structure against SPL XSD | XMLSpy, Oxygen XML, SPL authoring tools |
| Schematron Validation | Validates business rules and FDA-specific requirements | FDA SPL Validator, commercial tools |
| Terminology Validation | Validates LOINC codes, UNII codes, route codes, dosage form codes | FDA SPL Validator |
| Content Validation | Checks for required sections, proper nesting, and content completeness | Manual review + validation tools |
Don't skip pre-submission validation using the FDA SPL Validator tool. Run validation locally before submitting through the Electronic Submissions Gateway-the gateway will perform the same checks and reject non-compliant files, which means you've wasted submission time and processing fees. Using local validation tools first allows you to catch and fix errors immediately without FDA rejection cycles.
Step 6: Generate Package and Product Information
For each NDC code associated with the product, create structured package information:
Required package elements:
- NDC code in 5-4-2 format
- Package description
- Package quantity
- Package type (bottle, blister, etc.)
SPL Validation: Common Errors and How to Fix Them
Top 10 SPL Validation Errors
Based on FDA submission data and validation tool reports, these are the most frequent SPL errors:
| Error Type | Frequency | Impact | Common Cause |
|---|---|---|---|
| Missing required section | 28% | Validation failure | Incomplete section mapping |
| Invalid LOINC code | 22% | Validation failure | Using outdated codes or typos |
| Malformed XML syntax | 18% | Parse failure | Hand-editing XML without validation |
| Missing UNII code | 15% | Validation failure | Incomplete ingredient encoding |
| Incorrect namespace | 12% | Parse failure | Copy-paste from old templates |
| Invalid NDC format | 10% | Validation failure | Using 10-digit instead of 11-digit format |
| Missing effectiveTime | 8% | Validation failure | Incomplete header metadata |
| Cross-reference errors | 7% | Display issues | Broken internal links |
| Invalid dosage form code | 5% | Validation failure | Using non-FDA vocabulary |
| Character encoding issues | 3% | Display problems | Non-UTF-8 encoding |
How to Fix: Missing Required Sections
Error message:
Solution:
- Review FDA section requirements for your product type
- Add missing section with correct LOINC code
- Ensure section has required
,, andelements - Re-validate against SPL schema
How to Fix: Invalid UNII Codes
Error message:
Solution:
- Search FDA GSRS for correct UNII: https://gsrs.ncats.nih.gov/
- Replace incorrect code with valid UNII
- Verify codeSystem attribute is
2.16.840.1.113883.4.9 - For combination products, ensure all active ingredients have UNII codes
How to Fix: Malformed XML
Error message:
Solution:
- Ensure
is nested insideelement - Validate XML structure against SPL XSD schema
- Use XML editing tool with real-time validation
- Check for unclosed tags and proper nesting hierarchy
SPL Format vs. Other Drug Labeling Formats
SPL vs. PDF Labeling
| Feature | SPL Format | PDF Labeling |
|---|---|---|
| Structure | Machine-readable XML with semantic tags | Unstructured document |
| Validation | Automated validation against FDA requirements | Manual review only |
| DailyMed Publishing | Automatic upon approval | Manual FDA processing required |
| Cross-referencing | Structured internal links | Static page references |
| Data Extraction | Programmatic access to specific sections | Manual copy-paste or OCR |
| FDA Requirement | Mandatory for all submissions since 2009 | Not accepted for electronic submissions |
| Update Process | Submit new SPL version with incremented version number | Replace entire PDF |
| Terminology Coding | Required (LOINC, UNII, RxNorm) | Optional or absent |
SPL vs. eCTD Module 1.3.1
SPL is submitted as part of the eCTD (electronic Common Technical Document) but serves a different purpose:
| Aspect | SPL | eCTD Module 1.3.1 |
|---|---|---|
| Purpose | Encode labeling content in structured format | Container for regional administrative information |
| Location | US: m1/us/13-labeling/spl-file.xml | US-specific module in eCTD |
| Format | HL7 V3 XML | PDF + XML wrapper |
| Validation | SPL-specific validation rules | eCTD technical validation |
| Content | Only approved labeling text | May include draft labeling, annotated labeling, comparison tables |
The key difference: SPL is the authoritative, structured representation of approved labeling, while eCTD Module 1.3.1 contains all labeling-related documents for the submission, including SPL files.
SPL vs. Labeling Text Files
Prior to SPL adoption, sponsors submitted labeling as text files (.txt format). Key differences:
| Feature | SPL | Text File Labeling (Pre-2009) |
|---|---|---|
| Section Identification | LOINC codes uniquely identify sections | Section numbers/headings only |
| Ingredient Coding | UNII codes link to substance database | Text names only |
| Table Encoding | Structured HTML tables within XML | ASCII art or tab-delimited |
| Special Characters | UTF-8 encoding supports full character set | Limited to ASCII |
| Version Control | Document ID + version number | Manual file naming |
| Regulatory Status | Current FDA requirement | No longer accepted |
SPL Authoring Tools and Software Options
FDA-Recognized SPL Authoring Tools
| Tool Type | Examples | Best For | Cost |
|---|---|---|---|
| Commercial SPL Software | Ennov SPL Manager, MasterControl Labeling, Veeva Vault | Enterprise labeling management with workflow | $$$$ |
| XML Editors with SPL Support | Oxygen XML Editor, XMLSpy | Technical users comfortable with XML | $$ |
| Free SPL Tools | FDA SPL Author Tool (discontinued), Open-source templates | Small companies with technical resources | Free |
| Regulatory Services | CRO labeling services, consultants | Companies outsourcing labeling creation | $$$ |
Recommended Approach by Company Size
Small biotech (1-10 products):
- Use XML editor (Oxygen or XMLSpy) with SPL templates
- Validate with FDA SPL Validator
- Consider CRO support for first submission
Mid-size pharma (10-50 products):
- Invest in commercial SPL authoring software
- Implement labeling change control workflows
- Train in-house regulatory labeling specialists
Large pharma (50+ products):
- Enterprise labeling management system required
- Integration with global labeling repositories
- Automated validation and submission workflows
If you're a small biotech considering your first SPL authoring tool, start with CRO support for your first 2-3 submissions while your regulatory team learns the process. The investment in external expertise upfront (typically $5,000-$15,000) is far less expensive than internal tools ($10,000-$50,000+ annually) plus training time. Once your team has produced 3-4 compliant SPL files with CRO guidance, you'll have documented standards and process templates to build internal capability.
SPL Submission Process and FDA Review
Where to Submit SPL Files
SPL documents are submitted through the FDA Electronic Submissions Gateway (ESG) as part of:
- Original Applications: NDA, ANDA, BLA - SPL in eCTD Module 1.3.1
- Labeling Supplements: Changes Being Effected (CBE), Prior Approval Supplements (PAS)
- Annual Reports: Updated SPL reflecting all approved labeling changes
- Standalone SPL Updates: For minor editorial corrections
SPL Validation at FDA Gateway
When you submit through ESG, the gateway performs automatic SPL validation:
Validation checkpoints:
- XML well-formedness (can the file be parsed?)
- Schema validation (does structure match SPL XSD?)
- Terminology validation (are LOINC, UNII, NDC codes valid?)
- Document ID uniqueness (is this a duplicate submission?)
Possible outcomes:
| Outcome | Meaning | Next Steps |
|---|---|---|
| Accepted | SPL passed all gateway validations | Proceeds to FDA review |
| Rejected | SPL has validation errors | Fix errors and resubmit |
| Accepted with Warnings | Non-critical issues detected | FDA may request corrections in review |
FDA Review of SPL Content
Beyond automated validation, FDA labeling reviewers assess:
- Consistency with approved indications - Does labeling match what FDA approved?
- Accuracy of safety information - Are warnings, precautions, adverse reactions current?
- Compliance with PLR format - Does structure follow Physician Labeling Rule?
- Completeness - Are all required sections present with appropriate content?
- Clarity and readability - Is labeling understandable to target audience?
FDA may issue information requests or require labeling revisions even if SPL validation passed.
Maintaining SPL Compliance: Ongoing Requirements
When SPL Updates Are Required
FDA regulations require SPL updates in these situations:
| Trigger Event | Timeline | Submission Type |
|---|---|---|
| Boxed warning addition | 30 days | CBE-0 supplement |
| Contraindication change | 30 days | CBE-0 supplement |
| New safety information | 30 days | CBE-0 supplement |
| New indication approval | Upon approval | Prior Approval Supplement |
| Manufacturing change | Varies | Annual report or supplement |
| Product discontinuation | 30 days | Update SPL status in DailyMed |
| Minor editorial corrections | As needed | Annual report |
SPL Version Control Best Practices
Every time you update labeling, you must create a new SPL version:
Required version changes:
- Increment
by 1 - Update
to new effective date - Generate new
(document ID) - each version has unique ID - Keep same
- links all versions of the same product
Example version progression:
| Submission | Version Number | Effective Date | Document ID |
|---|---|---|---|
| Original approval | 1 | 2024-03-15 | abc-123-original |
| Safety update | 2 | 2024-08-22 | abc-123-version2 |
| Indication expansion | 3 | 2025-02-10 | abc-123-version3 |
| Editorial correction | 4 | 2025-06-01 | abc-123-version4 |
DailyMed Monitoring
After FDA approval, your SPL is automatically published to DailyMed (https://dailymed.nlm.nih.gov/).
Monitor DailyMed for:
- Correct display of all labeling sections
- Proper rendering of tables and formatting
- Accurate product metadata (NDC, ingredients, etc.)
- Broken links or display errors
If you identify DailyMed display issues, contact FDA's Labeling Team or submit corrected SPL.
Key Takeaways
Structured product labeling (SPL) is the FDA-mandated XML format for submitting drug product labeling information. SPL uses the HL7 Clinical Document Architecture to create machine-readable representations of prescribing information, enabling automated processing by FDA systems and public databases like DailyMed. All prescription and OTC drug applications submitted to FDA since 2009 must include SPL-formatted labeling.
Key Takeaways
- Structured product labeling is mandatory: All FDA drug submissions since 2009 require SPL format for labeling, with no exceptions for prescription drugs, OTC drugs, or biologics.
- SPL is more than XML formatting: Beyond technical structure, SPL requires accurate LOINC codes, UNII ingredient identifiers, and compliance with FDA content requirements outlined in the Physician Labeling Rule.
- Validation is multi-layered: Successful SPL submission requires passing XML schema validation, Schematron business rules, terminology validation, and FDA content review.
- Common errors are preventable: The top SPL validation errors - missing sections, invalid codes, and malformed XML - can be avoided with proper authoring tools and pre-submission validation.
- SPL is a living document: Labeling updates trigger new SPL versions with incremented version numbers, updated effective dates, and new document IDs while maintaining the same set ID for version linking.
- ---
Next Steps
Preparing compliant structured product labeling requires expertise in FDA regulations, XML structure, and terminology systems. Labeling errors delay approvals and create regulatory risk.
Organizations managing regulatory submissions benefit from automated validation tools that catch errors before gateway rejection. Assyro's AI-powered platform validates eCTD submissions against FDA, EMA, and Health Canada requirements, providing detailed error reports and remediation guidance before submission.
Sources
Sources
- FDA Structured Product Labeling Resources
- 21 CFR 314.50 - Content and format of an application
- 21 CFR 201.56 - Requirements on content and format of labeling for human prescription drug products
- HL7 Structured Product Labeling Release 4
- FDA Global Substance Registration System (GSRS)
- DailyMed - NLM Database of Labeling
