A curated list of open source OMOP (Observational Medical Outcomes Partnership) tools and resources.
The OMOP Common Data Model (CDM) is a standardized data model for observational healthcare data. It enables large-scale analytics across different healthcare systems and data sources. This list focuses on open source tools that work with OMOP CDM. It's not everything - the OHDSI organisation has over 350 repositories, so this is the interesting ones + the wider community.
- ETL & Data Processing
- Analytics & Research
- Machine Learning & AI
- Development & Infrastructure
- Vocabs
- Datasets
- Resources
- Common Data Model - The CDM itself
Tools for transforming data into OMOP CDM:
- Rabbit-in-a-Blender - Full ETL tool
- Carrot - Toolset for ETL
- Data2Evidence - End to end ETL tool
- OMOP on FHIR - FHIR built on top of OMOP
- WhiteRabbit - Data profiling tool for OMOP CDM mapping
- Usagi - Vocabulary mapping tool
- Carrot Mapper - Community mapping tool
- OMOP2OBO - Mapping to Open Biomedical Ontologies
- Bouzyges - Semantic mapping with LLM
- ODmapper - API to map a genomic variant to the OMOP concept_id
- ODharmonizer - Suite of tools to harmonize omics data to OMOP.
- kotobuki - Update outdated mappings in Usagi
- OMOCL - Declarative mapping language for openEHR to OMOP
- Genomics England Mappings - NHS datasets mapping
- DICOM2OMOP - DICOM mapping to OMOP
- ROMOPMappingTools - Functions to validate, update, and summarise Usagi mapping files
- FinOMOP_mappings - Mapping of Finnish medical vocabularies
- ready42 - Tools for data curation and mapping into OMOP CDM
- Ariadne - Python toolkit for mapping source terminologies to standard concepts
- ETL-Synthea - ETL for Synthea synthetic data
- Carrot Transform - Data transform to CDM
- convert-pheno - Conversion of datamodels for phenotypic data
- oxford-omop-data-mapper - Transformation of NHS datasets
- i2o-transform - PCORnet to OMOP
- fhir-omop-ig - FHIR implementation
- MEDS - Schema for medical event streams, used for EHR foundation models
- meds_etl - ETLs to MEDS, including OMOP v5
- OMOP_MEDS - OMOP to MEDS using MEDS-Transforms
- omop2meds - Fast OMOP to MEDS conversion in DuckDB
- EHR2Trace - Converts EHR exports to OMOP CDM 5.4 and MEDS from one canonical layer, with row-level lineage and output validation
- dbt-synthea - dbt project to convert Synthea synthetic data to OMOP CDM
- fhir2omop - FHIR R4 to OMOP CDM v5.4 mapping spec and ELT runtime
- DataQualityDashboard - Data quality assessment reports
- dqd-container - DQD in a Nightly Container
- ACHILLES - Data quality assessment and characterization
- Data-Quality-Analysis - Data assessment tool
- CdmInspection - R Quality control
- fastssv - Static semantic validator for OMOP CDM SQL
- BlendedICU - ETL for ICU data
- Janssen CDM - ETL inc. CPRD
- MIMIC-OMOP - MIMIC-III ETL
- Eos - openEHR ETL
- IMI_SOPHIA_DMS_OMOP - Maastricht ETL
- ETL-Synthea - Synthea to OMOP ETL
- FinnGen/ETL - FinnGen ETL
- mimic-iv-dbt - MIMIC-IV to CDM 5.4 with DuckDB and dbt
- dbt_mimic_omop - MIMIC-IV and MIMIC-IV-Note to OMOP CDM with dbt
Tools for analyzing and visualizing OMOP data:
- OmopSketch - Feasibility tool
- HADES - Large scale analytics packages
- Bunny - Cohort discovery tool
- ATLAS Data Sources - REST API for OMOP data access
- ATLAS - Web-based application for cohort definition and analysis
- Atlas3 - Updated reimplementation of OHDSI ATLAS for cohort definition and analysis
- CohortDiagnostics - Cohort characterization and diagnostics
- CohortGenerator - Cohort definition and generation
- PhenEx - Python framework for phenotype and cohort extraction, with built-in OMOP support
- Characterization - Patient and cohort characterization
- Cyclops - Large scale regularized regressions
- CohortMethod - Population-level effect estimation
- Cohort360 - Cohort builder / visualiser
- eds-scikit - Python lib for analysing OMOP
- LinkR - Web app for vis / analysing OMOP
- recruit - Clinical trial recruitment system with FHIR + OMOP
- SIDHA - Open data architecture for hidradenitis suppurativa research: EHR ingestion, computable phenotypes, diagnostic-delay analytics on OMOP CDM + FHIR R4
- Strategus - Coordinating / executing analytics
- CohortConstructor - Create study cohorts
- Picard - RWE pipelining tool favouring OHDSI tools
- OPAL - Data quality, cohort building, and concept exploration platform
- ehrapy - Python EHR analysis, with OMOP support through ehrdata
- All of Us Researcher Workbench - Research platform for the All of Us OMOP dataset
- IncidencePrevalence - Estimate incidence and prevalence
- CodelistGenerator - Find relevant concepts in the OMOP vocabularies
- PatientProfiles - Add patient-level characteristics to OMOP tables
- DrugUtilisation - Drug utilisation studies
- CohortCharacteristics - Summarise and compare cohort characteristics
- visOmopResults - Tables and plots for OMOP study results
- PSDL - Portable language for clinical scenario and cohort definitions
- omopy - Python reimplementation of the DARWIN EU R packages
AI/ML tools built for OMOP data:
- omop-learn - Python ML with OMOP
- Lettuce - LLM for matching drug names to OMOP concepts
- PatientLevelPrediction - Patient-level prediction models
- DeepPatientLevelPrediction - Deep learning for patient-level prediction
- CohortMethod - Population-level effect estimation
- omcp - MCP server for OMOP
- omop_mcp - MCP server for OMOP
- ascent-epi-demo - MCP agent demo for natural-language epidemiology and cohort generation on OMOP (Ascent)
- onto-llm-mapping - Ontology mapping with LLM + RAG
- Pythia - AI cohort-design advisor for ATLAS 3.0
- StudyAgent - Agentic study execution
- trex - Supabase-compatible backend with an embedded analytical engine and agent runtime
- FEMR - Framework for EHR foundation models (CLMBR, MOTOR) on OMOP data
- EDS-NLP - Clinical NLP framework from AP-HP
Developer tools and infrastructure components:
- omop-lite - OMOP CDM database creator
- CDMConnector - Tidyverse connector
- DatabaseConnector - Database connection management
- dsOMOP - OMOP support for DataSHIELD
- SqlRender - SQL translation and rendering
- FeatureExtraction - Feature extraction from OMOP data
- omopcept - R package for getting OMOP concepts
- omock - Generate mock OMOP CDM data
- OHDSIonAzure - Deploy OHDSI on Azure
- Broadsea - Deploys the core OHDSI stack
- sqlalchemy_omopcdm - SQLAlchemy models for OMOP CDM
- omop-cdm - Databricks 5.3 CDM
- dzd-omop-cdm-python-models - Python data class lib for OMOP CDM
- OMOPCommonDataModel.jl - Julia implementation of the OMOP CDM
- pyomop - Useful OMOP "swiss army knife" in Python
- PatientGenerator - Synthetic data generator for OMOP
- Circepy - Python implementation of CIRCE-BE
- GIS - Geospatial and exposome data in the CDM
- gaiaDB - Staging database and transformation recipes for place-based datasets
- omop-alchemy - SQLAlchemy models for OMOP CDM
- promop - Django models for OMOP CDM and the oncology extension
- DuckCDM - DuckDB OMOP engine with SqlRender, Circe, Achilles and an ATLAS 3.0-compatible WebAPI in pure Python
- Vocabulary-v5.0 - Build/releases of vocabularies
- Athena - Web application for distributing vocabularies
- Hecate - Semantic search engine for OHDSI vocabularies
- CVB - Custom vocabulary builder
- omophub-python - Python SDK for the OMOPHub vocabulary API
- omophub-R - R SDK for the OMOPHub vocabulary API
- omophub-node - Node.js SDK for the OMOPHub vocabulary API
- omophub-mcp - MCP server for OMOP vocabularies
- Eunomia - Package to access sample datasets
- EunomiaDatasets - Sample CDM
- UK-OMOP - Directory of UK OMOP data sets
- Barts Health - 10k synthetic CDM
- Synthea - 1k, 100k, 2.8m
- MIMIC-IV 100 patients
- EHRSHOT - Benchmark for EHR foundation models, with data in OMOP format
- OHDSI Website
- OMOP CDM Documentation
- OHDSI Forums
- OHDSI Book
- OHDSI Book 2nd Edition
- Tidy R programming with the OMOP Common Data Model
- HDRUK: The OMOP Common Data Model for Federated Analytics of Health Data
- linkml-omop-tutorial - LinkML schemas for OMOP
Know a tool that should be here? Suggest it or open a pull request. See CONTRIBUTING.md.
This list is open source and available under the MIT License.
