A Data Pro's Guide to SDTM Clinical Trials

The Study Data Tabulation Model, better known as SDTM, is the standard format for organizing clinical trial data before it's sent off for regulatory submission. Think of it as the common language that everyone involved-from sponsors to regulatory bodies like the FDA-has agreed to speak. It provides a predictable structure that makes the entire review process much smoother and faster.
At its core, SDTM is the blueprint for your study's data.
Why SDTM Is the Language of Modern Clinical Trials

Before SDTM, submitting clinical trial data was chaotic. Imagine trying to build a skyscraper where every contractor brings their own set of blueprints, each written in a different language. One team might measure in feet, another in meters. The result? Confusion, costly errors, and significant delays.
That’s exactly what the clinical trial world looked like for years. Every pharma company, CRO, and research site had its own unique, proprietary way of structuring its data.
When this patchwork of data formats landed on the desks of regulators at the U.S. Food and Drug Administration (FDA), reviewers had to spend a massive amount of their time just trying to figure out the data's layout. This created a huge bottleneck, delaying the approval of potentially life-saving drugs and introducing the risk of misinterpretation before the scientific review could even begin.
The Rise of a Global Standard
To cut through this chaos, the Clinical Data Interchange Standards Consortium (CDISC) developed SDTM. First published in 2004 as the Submission Data Model (SDM), it provides a consistent framework for organizing and formatting study data. It doesn't actually change the raw data, but it organizes it into logical, standardized groupings called domains.
These domains act like chapters in a book, each with a clear purpose. For instance:
- DM (Demographics): This is where you’ll find essential subject details like age, sex, and race.
- AE (Adverse Events): This domain captures any unfavorable medical events that occur during the trial.
- VS (Vital Signs): It holds all the key measurements, such as blood pressure, heart rate, and temperature.
- LB (Laboratory Test Results): All the data from lab tests is standardized and stored here.
Using this consistent structure means anyone-from an FDA reviewer to a data scientist on another team-can immediately find the exact information they need, no matter who sponsored or ran the trial. This principle of clear, compliant data handling is a cornerstone of modern software engineering in healthcare.
The core idea behind SDTM is simple but powerful: create a single, predictable structure for tabulation datasets. This allows reviewers to spend their time analyzing the science, not deciphering the data's layout.
The shift toward this standard became official in 2016, when the FDA's data standards catalog mandated SDTM for all new electronic drug submissions. The impact has been huge. Some industry reports suggest this change has helped reduce regulatory review times by up to 30%, a significant improvement. You can explore more about how these trends have evolved in this analysis of SDTM implementation.
This mandate is precisely why understanding sdtm clinical trials is no longer a "nice-to-have" but a fundamental requirement for bringing new therapies to market.
To put it all together, adopting SDTM isn't just about following rules; it's a strategic decision that brings measurable benefits to the entire drug development lifecycle.
The Core Benefits of Using SDTM
This table summarizes the core advantages of adopting SDTM in clinical trial submissions, highlighting its impact on efficiency, quality, and regulatory acceptance.
| Benefit | Description | Measurable Impact |
|---|---|---|
| Regulatory Compliance | Meets the mandatory electronic submission requirements set by the FDA and other global agencies like Japan's PMDA. | Avoids technical rejection of submissions and costly delays. |
| Improved Review Efficiency | Provides reviewers with data in a predictable format, allowing them to focus on scientific evaluation rather than data wrangling. | Reports suggest up to a 30% reduction in review cycle times. |
| Enhanced Data Quality | The standardization process forces teams to clean, map, and validate data, uncovering inconsistencies early on. | Fewer data queries from regulatory agencies and higher-quality datasets. |
| Data Interoperability | Standardized data is easier to pool and compare across different studies, supporting meta-analyses and broader research. | Enables more powerful cross-study safety and efficacy analysis. |
| Streamlined Processes | Creates a repeatable, predictable workflow for data preparation, reducing internal resource strain and project timelines. | Faster time-to-submission and more predictable project costs. |
Ultimately, these benefits translate into a more efficient, reliable, and faster path from clinical trial to patient access, which is the goal we're all working toward.
Navigating the Core SDTM Domains and Variables
At the heart of SDTM lies a simple but powerful concept: the domain. The best way to think of a domain is as a purpose-built container for a specific type of clinical trial data. Instead of having a chaotic mess of files and spreadsheets, SDTM gives every piece of information a logical, predictable home.
This organization is what turns raw, often inconsistent source data into a standardized format that regulators can easily review. Each domain gathers observations into logical buckets-demographics, adverse events, lab results, and so on. It’s this structure that brings clarity and predictability to the complex world of sdtm clinical trials.
The Three Foundational Domain Classes
As you get deeper into SDTM, you'll see that its dozens of domains are sorted into three main "General Observation Classes." This isn't just for academic neatness; it's a practical way to classify data based on what it actually represents.
- Interventions: These domains track anything done to a subject. This is where you'll find data on exposure to the study drug (the EX domain) or any other medications they might be taking (the CM domain).
- Events: This class is for capturing things that happen to a subject. The most famous one here is Adverse Events (AE), but it also covers things that happened before the trial, like their Medical History (MH).
- Findings: This is a broad but crucial category for any planned evaluations. It’s the home for objective measurements taken during the study, like Vital Signs (VS), Lab Test Results (LB), and Electrocardiogram (ECG) data.
This framework is flexible enough to accommodate almost any study protocol while ensuring the final datasets are consistent and recognizable. Each domain is essentially a table with observations as rows and specific variables as columns.
The real lightbulb moment for many people is realizing these domains aren't just isolated buckets. They're designed to connect and tell a story. The Demographics (DM) domain establishes who the subject is, while domains like Adverse Events (AE) and Lab Results (LB) detail what happened to them along the way.
A Closer Look at High-Impact Domains
While you'll encounter dozens of domains, a handful show up in nearly every single study. These are the ones that carry the most critical information and, frankly, often require the most work during the data mapping and ETL (Extract, Transform, Load) process.
A fascinating analysis of 23 clinical trials gives us a real-world look at where the data density is highest. The study found that the Adverse Events (AE) domain was overwhelmingly the largest, with a staggering 2,733 data elements recorded on average. This really drives home its central role in safety monitoring. Right behind it were Medical History (MH) and Vital Signs (VS), highlighting their importance for understanding a subject's baseline health and tracking changes over time. You can dig into the numbers yourself in the comprehensive study published on PMC.
This isn't just an academic point; it's a practical guide for anyone working in sdtm clinical trials. If you're building a data pipeline, you absolutely must have a deep understanding of domains like AE, DM, VS, and LB.
Before we dive into the most common domains, it's helpful to see them laid out. The table below breaks down the domains you'll encounter most frequently, explaining their role and the key information they hold.
Most Common SDTM General Observation Class Domains
| Domain | Domain Name | Purpose | Example Key Variables |
|---|---|---|---|
| DM | Demographics | Captures baseline subject information; one record per subject. | SUBJID, AGE, SEX, RACE, ARM |
| AE | Adverse Events | Records any unfavorable medical occurrences during the trial. | AETERM, AESEV, AESER, AEREL |
| EX | Exposure | Documents the subject's exposure to the study drug. | EXTRT, EXDOSE, EXSTDTC, EXENDTC |
| VS | Vital Signs | Contains results from vital signs measurements. | VSTESTCD, VSORRES, VSSTRESN, VSDTC |
| LB | Lab Test Results | Holds all laboratory test findings for a subject. | LBTESTCD, LBORRES, LBSTRESN, LBDTC |
| MH | Medical History | Describes a subject's medically relevant history prior to the study. | MHTERM, MHSTDTC |
| CM | Concomitant Medications | Tracks all medications used by a subject other than the study drug. | CMTRT, CMINDC, CMSTDTC, CMENDTC |
This table isn't exhaustive, but mastering these seven domains will give you a solid foundation for tackling over 90% of the mapping challenges you'll face in a typical study.
Essential Tips for Domain Mapping
When it's time to map your source data into these SDTM domains, a few best practices can save you from common headaches and make the entire process smoother.
-
Always Anchor Your Data with Demographics (DM): The DM domain is the spine of your entire SDTM submission. It must contain exactly one record for every subject, anchored by the unique
SUBJID(Subject Identifier). Get this right first. All other subject-level data flows from here, so ensuring variables likeAGE,SEX, andRACEare clean is your top priority. -
Get Comfortable with Key Variables: You'll quickly notice that some variables appear again and again across different domains. These are typically "identifiers" and, most importantly, "timing variables." For example,
--STDTC(Start Date of Observation) and--ENDTC(End Date of Observation) are the backbone of your trial's timeline. Keeping these consistent across all domains isn't just a good idea-it's non-negotiable for a valid submission. -
Embrace Controlled Terminology: Many SDTM variables don't allow free-text-they require specific, predefined values from a "controlled terminology" list. A classic example is the
AESEV(Severity) variable in the AE domain, which must use approved terms like "MILD," "MODERATE," or "SEVERE." Using the correct terminology is a cornerstone of compliance and can be checked automatically during validation. For more complex mappings, especially when bridging standards, a tool like the OMOPHub Concept Lookup can be invaluable for finding standard codes. If you're building automated pipelines, you can even integrate this logic directly using the OMOPHub Python SDK or R SDK, which you can learn more about in the API documentation.
Building a Practical ETL Workflow for SDTM
Moving from the theory of SDTM to the real world means getting your hands dirty with the data. This is where a well-planned ETL (Extract, Transform, Load) workflow becomes the backbone of your entire submission process, turning messy source data into the clean, compliant datasets regulators expect for sdtm clinical trials.
Think of it like a production line. Your raw materials are all the disparate data sources-electronic health records (EHRs), lab reports, and EDC system outputs. The ETL process is the machinery that cleans, shapes, and assembles these materials into a finished product: a perfect SDTM dataset.
A Step-by-Step Mental Model for SDTM ETL
While every study has its own quirks, the fundamental ETL workflow is surprisingly consistent. The goal is always to create a repeatable and fully traceable path from a raw data point to its final home in an SDTM domain. Your single most important tool here is a meticulously detailed mapping specification document-it’s the blueprint for the entire operation.
The diagram below gives you a bird's-eye view of how different data streams flow through the process and land in their respective domains, telling a clear story for reviewers.

As you can see, specific types of information like demographics, safety events, and lab results are systematically funneled into the right SDTM domains, creating an organized and intuitive data package.
At its core, the ETL workflow breaks down into three main stages:
- Extract: First, you pull the raw data from its source. This could be a Clinical Trial Management System (CTMS), an Electronic Data Capture (EDC) platform, or a central lab’s database. The data arrives in all shapes and sizes.
- Transform: This is where the magic happens. Following your mapping specifications, you clean the data, standardize terminologies, convert units, and even derive new variables needed for the SDTM structure. This is the heaviest lift.
- Load: Finally, you load the clean, transformed data into the target SDTM domain datasets (like
dm.xptorae.xpt). These files are now properly structured and ready for the final validation checks.
A great ETL process isn't just about moving data from point A to point B. It’s about building a transparent and auditable trail that proves to regulators how every single data point in your submission dataset originated from the source. This is fundamental to building trust.
For a deeper dive into the kinds of datasets you'll be working with, our guide on the clinical trial dataset provides more context on organizing study information effectively.
Navigating Common Mapping Pitfalls
Even with a solid plan, you’re bound to run into a few common hurdles. Knowing what they are ahead of time can save you countless hours of rework and keep your submission timeline on track.
1. Handling Non-Standard Data Collection You’ll inevitably find that some data was collected in a way that doesn’t quite fit a standard SDTM domain. Maybe it’s a study-specific questionnaire with unique endpoints that have no obvious home.
- Expert Tip: Your first instinct might be to create a custom domain, but resist that urge. The correct, compliant way to handle this is by using the Supplemental Qualifiers (SUPP--) domains. For example, any extra information you have about adverse events that doesn't fit in the AE domain can go into a
SUPPAEdataset. This keeps your coreAEdomain pristine and standard.
2. Standardizing Date and Time Formats
Dates and times are notorious for being a mess. Source systems capture them in every format imaginable-MM/DD/YYYY, DD-MON-YY, with or without time, sometimes just a month and year. SDTM, however, has a strict requirement: the ISO 8601 format (e.g., YYYY-MM-DDTHH:MM:SS).
- Expert Tip: Build a powerful date-parsing function at the very beginning of your ETL pipeline. This function needs to be smart enough to recognize various incoming formats and convert them all to the ISO 8601 standard. Make sure you clearly document how your process handles partial dates, like what day you assign when only a month and year are provided.
3. Mapping to Controlled Terminology
Many SDTM variables, such as severity (--SEV) or units (--ORRESU), are not free-text. They must use specific values from a predefined list called Controlled Terminology. This means you have to map the raw text from the source (e.g., "mild," "minimal") to the single, correct standard term ("MILD").
- Expert Tip: Don't do this manually. Use code-driven mapping tables or a dedicated terminology service to manage these translations. For complex mappings, like converting thousands of local lab codes to a universal standard like LOINC, an automated approach is a must. API-driven platforms and libraries like the OMOPHub Python SDK or R SDK are perfect for integrating these vocabulary lookups directly into your ETL workflow, as outlined in the OMOPHub API documentation.
Bridging the Vocabulary Gap: How to Connect SDTM with OMOP

Even with a perfectly designed ETL process for sdtm clinical trials, there's one step that consistently trips up even experienced teams: vocabulary mapping. This is where the rubber meets the road-translating the messy, inconsistent, and often proprietary terminologies from source systems into the clean, standardized codes SDTM demands.
Think about it. Your lab system might record a test as "Fasting Glucose Lvl," but for SDTM, that needs to be a specific LOINC code. A site's EHR might list a drug as "Tylenol 500mg," which has to be mapped to a precise RxNorm concept. Trying to manage these countless translations with spreadsheets and manual lookups is a recipe for headaches and, worse, data errors.
This is exactly why integrating with the OHDSI/OMOP Common Data Model is such a game-changer. By connecting your SDTM workflow to OMOP's powerful, standardized vocabularies, you can stop mapping by hand and start automating the entire process. If you're new to the model, our detailed guide on the OMOP Common Data Model is a great place to start.
The Power of an API-First Approach to Vocabularies
In the past, using OMOP's vocabularies meant taking on a serious infrastructure project: downloading, hosting, and maintaining a massive, multi-gigabyte database. This is the exact pain point OMOPHub was built to eliminate. It gives developers direct REST API access to the complete OHDSI ATHENA vocabulary suite-LOINC, RxNorm, SNOMED CT, and dozens more.
Instead of wrestling with a local database, your ETL script simply makes an API call to find the standard code it needs. This not only strips away the infrastructure complexity but also guarantees you're always using the most current vocabulary versions, managed centrally.
The real win here is how this transforms your pipeline. You can programmatically search for concepts, trace relationships between different coding systems, and build complex cross-vocabulary maps on the fly. All that power, with none of the database management overhead.
This API-driven workflow is especially valuable for teams working with AI and machine learning. You can use the REST APIs to build sophisticated mappings, like translating free-text dose instructions into structured SDTM dose variables (e.g., Dose=10mg). Or you could automate the extraction of terms from clinical notes to populate the AE (Adverse Events) and VS (Vital Signs) domains with edge-cached speed.
This level of automation, backed by end-to-end encryption and long-term audit trails for HIPAA/GDPR compliance, lets your product teams build faster and with more confidence. The impact is undeniable: after the SDTM mandate, FDA study data acceptance rates jumped to 98% in 2022. You can read more about these trends and the impact of SDTM standards on Certara's blog.
A Practical Example with the OMOPHub SDK
To make implementation as straightforward as possible, OMOPHub offers SDKs for popular data science languages like Python and R. Let's walk through a common scenario: mapping a local lab test name to its official LOINC code.
Imagine your source data has a test called "Serum Creatinine." Your goal is to find the right LOINC code to populate the LBTESTCD variable in the LB (Laboratory Test Results) domain. Here’s how you’d do it with the omophub-python SDK:
from omophub import OmopHubClient
# Initialize the client with your API key
client = OmopHubClient(api_key="YOUR_API_KEY")
# Search for the concept "Serum Creatinine" in the LOINC vocabulary
try:
response = client.concepts.search(
query="Serum Creatinine",
vocabulary_id=["LOINC"],
concept_class_id=["Lab Test"]
)
# Print the top result
if response.concepts:
top_concept = response.concepts[0]
print(f"Found LOINC Code: {top_concept.concept_code}")
print(f"Concept Name: {top_concept.concept_name}")
print(f"Concept ID: {top_concept.concept_id}")
else:
print("No matching concept found.")
except Exception as e:
print(f"An error occurred: {e}")
This small script automates a critical lookup, making your ETL pipeline more reliable and scalable. You can dive deeper into the SDKs on GitHub with the omophub-R SDK. For full technical specifications, the official OMOPHub API documentation is the definitive resource.
Exploring Vocabularies with an Interactive Tool
Sometimes, you just need to explore the vocabularies yourself. For ad-hoc lookups or helping your team build out mapping specifications, OMOPHub provides an interactive web-based Concept Lookup tool. The screenshot below shows the tool being used to search for "creatinine."

This simple interface lets you filter by vocabulary (like LOINC) and concept class, instantly giving you the standardized codes and names you need. It’s an incredibly useful resource for resolving ambiguities and validating your mapping logic during the ETL development phase.
Automating Validation to Ensure Regulatory Compliance
Getting your SDTM datasets built is a huge achievement, but it doesn't mean you're ready for submission. The datasets themselves are just one part of the equation; proving they are fully compliant with regulatory standards is the other, and it's every bit as important. This is where a rock-solid, automated validation process acts as your most critical quality gate.
Validation isn't just about catching typos. It’s a rigorous, systematic inspection that proves your datasets follow a very strict set of rules. This process is the absolute final checkpoint before your data heads to agencies like the FDA, making it a pivotal, high-stakes step in any sdtm clinical trials project.
The Core Pillars of SDTM Validation
The validation process essentially puts your data through a multi-point inspection. Think of it like getting your car checked before a cross-country road trip; every check verifies a different aspect of readiness and safety. We rely on industry-standard tools from organizations like CDISC or vendors like Pinnacle 21 to automate these checks and generate detailed reports that pinpoint every single issue.
Your validation workflow must confirm conformance across three primary areas:
- SDTM Implementation Guide (SDTMIG) Conformance: This checks if your dataset's structure follows the official blueprint. It confirms you've used the right domains, variables are in the correct order, and data types (like character or numeric) are properly assigned.
- Controlled Terminology: This check is all about language. For variables that require standardized values, it ensures you’ve used the exact terms from the approved CDISC codelists. For instance, it will flag if the
AESEVvariable contains "slight" instead of the required term, "MILD." - Define.xml Consistency: The
define.xmlis the roadmap you give to regulators that describes your datasets. Validation tools cross-reference this map against your actual data, making sure it’s a perfect, accurate reflection. If the map doesn't match the territory, you'll fail the check.
Think of validation as a formal contract between you and the regulator. The SDTMIG and controlled terminology are the universal terms of that contract. The
define.xmlis your study-specific, legally binding addendum. Automated validation is how you prove you’ve upheld your end of the deal.
Shift Left with an Automated Validation Pipeline
In the past, many teams would save all their validation checks for the very end of the ETL process, right before packaging everything for submission. This "big bang" approach is incredibly risky. Finding a systemic error at that stage can set off a firestorm of frantic, expensive rework and put your submission timelines in serious jeopardy.
A much smarter strategy is to "shift left," which simply means integrating automated validation directly into your data transformation pipeline. Instead of one big check at the end, you run checks continuously as the data is being built. For example, right after you generate the Demographics (DM) domain, a script can immediately validate it. If an issue is found, it's flagged and fixed on the spot-not weeks later when the context is lost. This early feedback loop is fundamental for ensuring data integrity and building confidence in your final output. Visualizing these checks can be incredibly powerful, a topic we explore in our guide to building effective data quality dashboards.
By automating these checks, you turn validation from a single, high-pressure final exam into a series of small, manageable quizzes throughout the project. This approach nearly eliminates the risk of last-minute surprises and ensures that by the time you reach the finish line, your datasets are already compliant by design.
Essential Tips for a Successful SDTM Implementation
When it comes to SDTM implementation, the difference between a smooth submission and a last-minute fire drill often comes down to foresight and a solid game plan. Getting your sdtm clinical trials data right from the start isn’t about luck; it’s about applying a few hard-won lessons that can save you countless hours and headaches down the road.
Think of it this way: the most effective projects begin not with writing code, but with careful planning. Shifting your focus to proactive problem-solving is the single best way to sidestep common traps that can derail a study submission right at the finish line.
Start with the End in Mind
Don't even think about mapping a single data point until you’ve thoroughly absorbed the clinical trial protocol and the Statistical Analysis Plan (SAP). These documents are your north star. They tell you precisely what data is being collected and, more importantly, exactly how it will be analyzed for the final report.
If you know the key efficacy and safety endpoints from day one, you can spot potential mapping headaches early on. This forward-thinking approach ensures your ETL logic is built to serve the actual needs of the biostatistics team, which prevents a world of pain and costly rework when it’s time to create the analysis datasets (ADaM).
The most expensive mistake in data mapping is a failure to communicate. A deep, shared understanding of the SAP is what bridges the gap between data management and the statisticians, ensuring the SDTM datasets are not just compliant, but genuinely fit for purpose.
Don't Reinvent the Wheel
Before you even consider building a custom domain or a clever new mapping workaround, stop and check the official guidance. Someone has almost certainly faced your exact mapping challenge before, and CDISC has built an entire library of resources to keep teams from solving the same problems again and again.
Make these your first port of call:
- SDTM Implementation Guide (SDTMIG): This is your foundational text. It contains the core rules, domain structures, and variable definitions you'll live and breathe.
- Therapeutic Area User Guides (TAUGs): Dealing with oncology, virology, or diabetes data? These guides provide specific, standardized examples for modeling the complex data points unique to those disease areas.
- CDISC Library / Shared Health and Clinical Research Electronic Library (SHARE): These are the official metadata repositories. They give you machine-readable standards and all the controlled terminology you'll need.
Master Your Metadata
Your mapping specification is the single most important document in the entire ETL process. This isn’t just paperwork; it’s the definitive blueprint that details exactly how every piece of source data is transformed and loaded into its target SDTM variable.
This document has to be granular, clear, and relentlessly updated. A well-maintained spec is what allows new team members to get up to speed quickly, makes the validation process infinitely simpler, and serves as the critical audit trail for regulatory reviewers. For projects dealing with heavy vocabulary mapping, you can even automate parts of this by exploring concepts programmatically with tools like the OMOPHub Python SDK or the OMOPHub R SDK. For more on integrating with the API, check out the OMOPHub API documentation. And for quick, on-the-fly lookups, the OMOPHub Concept Lookup tool is an incredibly handy resource.
Common Questions (and Straight Answers) About SDTM
As you start working with sdtm clinical trials, a few practical questions almost always surface. Let's walk through some of the most common ones I hear from teams who are new to the standard.
SDTM vs. ADaM: What’s the Real Difference?
This is easily the most frequent point of confusion, but it's simple once you see the purpose of each. Think of them as two distinct steps in preparing your data for its final destination.
-
SDTM (Study Data Tabulation Model): This is all about organizing the raw data you collected during the trial. Its job is to take everything from the case report forms and structure it into a standardized, traceable format that regulators can easily review. It’s the "source of truth" for what was collected.
-
ADaM (Analysis Data Model): This comes next. ADaM datasets are built from SDTM datasets, but they are specifically tailored for statistical analysis. You might derive new variables or structure the data in a way that makes it simple to plug into a statistical model.
In a nutshell, you first map your raw data to SDTM for submission. Then, you transform that SDTM data into ADaM to make your statisticians' lives easier.
Can We Just Create a Custom Domain for Our Data?
The short answer is yes, you can, but you almost certainly shouldn't. The CDISC standard technically allows for sponsor-defined custom domains (usually with a prefix like X, Y, or Z), but this isn't a simple shortcut.
Creating a custom domain requires an immense amount of documentation and a rock-solid justification for regulators. It’s a path you only take when there is absolutely no other option. In my experience, there's almost always a better way within the existing framework.
Using a standard domain with a
SUPP--dataset is always preferable to creating a custom domain. This approach maintains the integrity of the validated SDTM structure and is far easier for regulators to review and understand.
So, What Do I Do with Data That Doesn't Fit a Standard Variable?
This happens all the time. You collect a crucial piece of data, but when you go to map it, you find there's no perfect home for it in a standard variable like AETERM or VSORRES.
This is precisely what Supplemental Qualifiers (SUPP-- datasets) were designed for. These are essentially companion tables that link directly to a parent domain. For example, SUPPAE would hold extra information for the Adverse Events (AE) domain.
This lets you include all your collected data without breaking the compliance of the standard domain structure. It’s the official, regulator-approved way to ensure no valuable data gets left behind.
At OMOPHub, we eliminate the infrastructure burden of managing complex vocabularies. Our developer-first platform provides REST API access to all OHDSI ATHENA vocabularies, enabling your team to automate mappings and build compliant data pipelines with speed and confidence. Get started today at https://omophub.com.