aaekay/ecg-datasets

This repository contains updated single soource of public ECG/EKG datasets available

62

0 commits

updated Jul 29, 2026

See the code

README

πŸ«€ Comprehensive ECG Datasets Collection

A curated collection of public ECG datasets for machine learning, research, and clinical applications

Stars Last Updated Contributions Welcome License (local license file unavailable; see change log)

πŸ“‹ Table of Contents


πŸ₯ Clinical ECG Datasets

Large-Scale Clinical Datasets

DatasetYearRecordsPatientsDurationLeadsSample RateAccessLicenseLink
ACS-ECG202619,95518,90910s12-lead500 HzPublicCC BY 4.0Figshare
HEEDB202511,670,0152,167,79510s12-lead250-500 HzCredentialedBDSP LicenseBDSP
CODE-II20252,735,2692,093,80710s12-lead500 HzPublicCC BY 4.0arXiv
MIMIC-IV-ECG2023~800,000~160,00010s12-lead500 HzCredentialedPhysioNet LicensePhysioNet
SPH 12-lead202225,77024,66610-60s12-lead500 HzAcademicCC BY 4.0Nature Data
CODE-15%2021345,779233,7707.3-10.2s12-lead400 HzPublicCC BY 4.0Zenodo
Chapman-Shaoxing202045,15234,90510s12-lead500 HzPublicODC-BYFigshare
PTB-XL202021,83718,88510s12-lead500 HzPublicCC BY 4.0PhysioNet
Georgia 12-lead202010,34410,344Variable12-lead500 HzAcademicPhysioNet LicensePhysioNet
PTB Diagnostic2004549294Variable15-lead1000 HzPublicODC-BYPhysioNet

Specialized Clinical Datasets

DatasetYearRecordsFocusDurationLeadsSample RateAccessLink
ARGO20261,962Post-ischemic ventricular tachycardia2.5s12-lead + EGM1000 HzPublicPhysioNet
VitalDB Arrhythmia2026482Intraoperative arrhythmia~203 hours total1-lead500 HzPublicPhysioNet
Brugada-HUCA2026363Brugada syndrome12s12-lead100 HzPublicPhysioNet
SHDB-AF2025128Atrial Fibrillation~24 hours2-lead200 HzPublicPhysioNet
INCART200375Arrhythmia30 min12-lead257 HzPublicPhysioNet
MIT-BIH AF200025Atrial FibrillationLong-term2-lead250 HzPublicPhysioNet
European ST-T199190ST-T Changes2 hours2-lead250 HzPublicPhysioNet
AHA Database1985154Arrhythmia24 hours2-lead250 HzRestrictedContact AHA
MIT-BIH Arrhythmia198048Arrhythmia30 min2-lead360 HzPublicPhysioNet

Continuous Monitoring Datasets

DatasetYearRecordsPatientsDurationLeadsSample RateAccessLink
Icentia11k20242B beats11,000Up to 2 weeks1-lead250 HzPublicPhysioNet
Sudden Cardiac Death Holter200423234-25 hours2-lead250 HzPublicPhysioNet
Long-Term ST2003868021-24 hours2-3 lead250 HzPublicPhysioNet
Sleep Heart Health Study20035,8045,804Overnight1-lead ECG + PSG250 HzRegisteredNSRR
Apnea-ECG200070707-10 hours1-lead100 HzPublicPhysioNet
MIT-BIH Long-term19997714-22 hours2-lead128 HzPublicPhysioNet
MIT-BIH Normal Sinus Rhythm1999181820-24 hours2-lead128 HzPublicPhysioNet

πŸ”¬ Research ECG Datasets

PhysioNet Research Collections

DatasetYearRecordsSubjectsCondition FocusDurationSample RateAccessLink
Autonomic Aging20211,1041,104Cardiovascular autonomic aging8-45 min1000 HzPublicPhysioNet
EPHNOGRAM20216924Simultaneous ECG and PCGVariable8000 HzPublicPhysioNet
BUT QDB20201815ECG signal quality24+ hours1000 HzPublicPhysioNet
CEBSDB20146020ECG, breathing and SCG5-50 min5000 HzPublicPhysioNet
ECG-ID201431090ECG biometrics20s500 HzPublicPhysioNet
Abdominal and Direct Fetal ECG201255Fetal ECG extraction5 min1000 HzPublicPhysioNet
QT Database2003105105QT interval analysis15 min250 HzPublicPhysioNet
Fantasia Database20004040Heart rate variability120 min250 HzPublicPhysioNet
MIT-BIH Supraventricular19997878Supraventricular arrhythmias30 min128 HzPublicPhysioNet
MIT-BIH ST Change19992828Exercise stressVariable360 HzPublicPhysioNet

Extended Research Datasets

DatasetYearRecordsPatientsSpecial FeaturesAccessLink
Neurotech EEG202623,6074,914Ambulatory EEG with ECG channel, 212,186 hoursCredentialedBDSP
EchoNext2026VariableVariableECG + echocardiogram, structural heart diseaseRestrictedPhysioNet
BBBD20265 experiments178EEG + ECG + eye tracking during educational videosPublicProject
Yoga EEG-ECG-Video20264949Concentration and mind-wandering, BIDS formatPublicNature Data
MIMIC-III-Ext-PPG20264,920,4876,131PPG with simultaneous ECG, ABP and respirationCredentialedPhysioNet
MEETI2026784,680160,597ECG signals, images, features and interpretationsCredentialedGitHub
PSG-IPA20262020PSG with ECG and multi-scorer annotationsPublicPhysioNet
HOME2025VariableVariableEvaluation-only consumer single-lead ECG benchmarkPublicZenodo
HK1K20251,0321,032Pediatric EEG + ECG around NREM sleep onsetPublicZenodo
tOLIet202514986Thigh ECG from toilet-seat dry electrodesPublicPhysioNet
OpenECG20251,200,000MultipleFoundation model benchmark, 9 centersPublicarXiv
Heartcare-220K2025220,000220,000Multimodal framework, disease diagnosisPublicarXiv
Icentia11k20242B beats11,000Continuous ECG, up to 2 weeksPublicPhysioNet
PTB-XL+202321,83718,885Enhanced with extracted featuresPublicPhysioNet
LUDB2020200200Lobachevsky University, annotatedPublicPhysioNet
UVA ECG20191,000+1,000+University of Virginia collectionAcademicRequest Access
WESAD20181515Wearable chest ECG and multimodal stress signalsPublicUCI

πŸ† Competition ECG Datasets

PhysioNet/CinC Challenges

ChallengeYearRecordsTaskBest PerformanceAccessLink
Challenge 202620266,600 training PSGsCognitive impairment prediction from sleep studiesOfficial phasePublicMoody Challenge
Challenge 20252025Multiple sourcesChagas disease detection from ECGResults releasedPublicMoody Challenge
Challenge 2024202421,799 imagesECG Image DigitizationResults releasedPublicMoody Challenge
Challenge 2021202188,253Multi-lead ECG ClassificationF1: 0.71PublicPhysioNet
Challenge 2020202043,10112-lead ECG ClassificationF1: 0.533PublicPhysioNet
Challenge 2017201712,186AF DetectionF1: 0.83PublicPhysioNet
Challenge 201520151,000Reducing False AlarmsScore: 81.39PublicPhysioNet

CPSC (China Physiological Signal Challenge)

ChallengeYearRecordsTaskLeadsSample RateAccessLink
CPSC 202120213,453Paroxysmal AF Detection1-lead200 HzPublicCPSC β€” unavailable
CPSC 201920196,877Multi-label Classification12-lead500 HzPublicCPSC
CPSC 2018201813,244AF Detection1-lead300 HzPublicCPSC

Other Competition Datasets

DatasetPlatformYearRecordsTaskAccessLink
ECG-5000Various20245,000Anomaly DetectionPublicUCR Archive
PTB-XL ECG ImagesKaggle202421,837Synthetic ECG ImagesPublicKaggle
ECG Arrhythmia ClassificationKaggle20204 sourcesMulti-class ClassificationPublicKaggle
ECG Heartbeat CategorizationKaggle2019109,446Beat ClassificationPublicKaggle

πŸ“Š Dataset Comparison

By Size and Scale

DatasetRecordsPatientsTotal HoursData SizeYear
HEEDB11,670,0152,167,79532,417Variable2025
CODE-II2,735,2692,093,8077,598~500 GB2025
MIMIC-IV-ECG~800,000~160,000~2,222~150 GB2023
CODE-15%345,779233,770~960Variable2021
PhysioNet 202188,25388,253245.1~15 GB2021
Chapman-Shaoxing45,15234,905125.4~8.2 GB2020
SPH 12-lead25,77024,666Variable~5.1 GB2022
PTB-XL21,83718,88560.7~2.5 GB2020
MIT-BIH Arrhythmia484724~23 MB1980

By Clinical Condition

ConditionPrimary DatasetsTotal RecordsBest Performance
ArrhythmiaMIT-BIH, PTB-XL, Chapman, CODE-II, HEEDB14,000,000+99.3% Acc
Atrial FibrillationMIT-BIH AF, CPSC 2018/2021, Icentia11k, MIMIC-IV-ECG800,000+AUROC: 0.996 (ECG-FM)
Myocardial InfarctionPTB-XL, PTB Diagnostic, CODE-II, HEEDB14,000,000+AUC: 0.95+
Structural Heart DiseaseEchoNextVariable77% Acc (EchoNext)
Normal vs AbnormalAll major datasets20,000,000+98.7% Acc
Multi-label (150+ classes)HEEDB, PTB-XL, Chapman, SPH, CODE-II14,000,000+AUROC >0.95 (ECGFounder)

By Data Type and Format

Data TypeDatasetsAdvantagesUse Cases
Raw WaveformHEEDB, PTB-XL, Chapman, MIT-BIH, CODE-II, Icentia11k, MIMIC-IV-ECGHigh fidelity, full informationDeep learning, signal processing
Continuous MonitoringIcentia11k, Long-Term ST, Sudden Cardiac Death Holter, Apnea-ECGLong-term recordings, hours to weeksArrhythmia detection, HRV analysis
Processed FeaturesPTB-XL+Pre-extracted featuresTraditional ML, quick prototyping
ImagesPTB-XL Images, Challenge 2024Visual interpretationComputer vision, image-based ML
MultimodalEchoNext, MEETI, BBBD, HK1K, Heartcare-220KECG + other clinical dataComprehensive diagnosis
Foundation Model TrainingHEEDB, OpenECG, MIMIC-IV-ECGLarge-scale pre-trainingSelf-supervised learning, transfer learning
AnnotationsMost PhysioNet datasets, HEEDB, ARGO, VitalDB Arrhythmia, BUT QDBExpert labels, ICD codesSupervised learning, validation

πŸ› οΈ Tools & Libraries

Data Access and Processing

ToolLanguagePurposeInstallation
WFDBPython/MATLABPhysioNet data accesspip install wfdb
NeuroKit2PythonNeurophysiological signalspip install neurokit2
BioSPPyPythonBiosignal processingpip install biosppy
HeartPyPythonHeart rate analysispip install heartpy
PyECGPythonECG analysis toolkitpip install pyecg
ECGtizerPythonPaper ECG digitizationGitHub β€” unavailable
CardioMarkMATLABECG annotation toolGitHub

Visualization and Analysis

ToolPurposeKey Features
ECG-PlotECG visualizationMulti-lead plotting, annotations
PlotlyECGInteractive plotsWeb-based, interactive ECG plots
MatplotlibStatic plotsPublication-quality figures
BokehInteractive visualizationReal-time ECG monitoring

AI-Powered ECG Analysis Tools

ToolPurposeKey FeaturesAccess
DeepECGReal-time ECG analysisComprehensive measurements, AI-poweredDeepECG.ai
QalyExpert ECG reviewCertified experts, 30+ rhythm detectionQaly.co
HeartKey RhythmFDA-cleared ECG evaluationSuite of algorithms, wearable device supportB-Secur
EchoNextStructural heart disease detectionECG + Echocardiogram, 77% accuracyPhysioNet
VARSVersatile ECG analysisGraph-based representation, risk-sensitivearXiv

ECG Foundation Models

ModelYearTraining DataParametersKey CapabilityOpen SourceLink
ECGFounder202410.7M ECGs (HEEDB)-150 diagnostic categories, AUROC >0.95 for 80 diagnosesYesarXiv, GitHub
AnyECG202613.3M ECGs-1,172 conditions, holistic health profiling, future risk prediction-arXiv
ECG-FM20241.5M ECGs (MIMIC-IV + PhysioNet)90.9MAF detection AUROC 0.996, open weightsYesarXiv, GitHub
CardX20251M+ ECGsEfficientExChanGeAI platform, local fine-tuningYes (MIT)arXiv
ECGFM20251M+ multi-center ECGs-Contrastive + generative + diagnostic text generation-ScienceDirect

ECG Language Models

ModelYearTaskKey InnovationLink
ECG-GPT2024ECG image interpretationVision encoder-decoder, format-independent, validated on 3.8M ECGsmedRxiv
CAMEL2026Cardiac event forecastingFirst ELM for forecasting, +7% on ECGBench, +12.4% on ECGForecastBencharXiv
GEM2025Grounded ECG understandingUnifies time series + images + text, NeurIPS 2025, +22.7% explainabilityarXiv, GitHub
ELF2026ECG interpretationEncoder-free, single projection layer, matches SOTAarXiv
RhythmBERT2026Heart disease detectionSelf-supervised on latent ECG representationsarXiv

Machine Learning Frameworks

FrameworkECG-Specific FeaturesPopular Models
TensorFlowtf.signal for ECG processingCNN, LSTM, Transformers
PyTorchtorchaudio for signalsResNet1D, WaveNet, TCN
scikit-learnClassical ML algorithmsSVM, Random Forest, XGBoost

πŸ“š Benchmarks & Papers

Key Survey Papers

PaperYearCitationsFocus
"A Systematic Review on Foundation Models for Electrocardiogram Analysis"2025NewFoundation model architectures, pre-training, adaptation
"Deep learning and electrocardiography: systematic review"2025New198 publications, comprehensive DL survey
"Generalizability of electrocardiographic artificial intelligence"2025NewECG-AI generalizability across populations
"Deep Learning for ECG Analysis: Benchmarks and Insights from PTB-XL"2021400+PTB-XL benchmarking
"Automatic diagnosis of the 12-lead ECG using a deep neural network"2020800+Deep learning methods
"ECG arrhythmia classification using a 2-D convolutional neural network"20181000+CNN for arrhythmia

Recent High-Impact Papers (2024-2026)

PaperYearFocusLink
"CAMEL: An ECG Language Model for Forecasting Cardiac Events"2026First ELM for cardiac event forecastingarXiv
"RhythmBERT: Self-Supervised Language Model for Heart Disease Detection"2026Self-supervised latent ECG representationsarXiv
"AnyECG: Evolved ECG Foundation Model for Holistic Health Profiling"20261,172 conditions, future risk predictionarXiv
"ELF: Encoder-Free ECG Language Model"2026Simplified ELM architecturearXiv
"Harvard-Emory ECG Database"2026Largest credentialed ECG database (11.7M ECGs)Nature Data
"GEM: Empowering MLLM for Grounded ECG Understanding"2025Multimodal ECG + images + text, NeurIPS 2025arXiv
"OpenECG: Benchmarking ECG Foundation Models with 1.2M Records"2025Foundation model benchmark, 9 centersarXiv
"ExChanGeAI: End-to-End Platform for ECG Analysis and Fine-tuning"2025Open-source ECG platform + CardX modelarXiv
"CODE-II: A Large-Scale ECG Dataset with 66 Diagnostic Classes"2025Large-scale clinical datasetarXiv
"VARS: VersAtile and Risk-Sensitive Cardiac Diagnosis"2025Graph-based ECG representationarXiv
"Heartcare Suite: Multimodal Framework for ECG Analysis"2025Multimodal ECG analysis, HeartcareGPTarXiv
"ECGFM: A Foundation Model Trained on Multi-Center Million-ECG Dataset"2025Contrastive + generative pre-trainingScienceDirect
"ECGFounder: An ECG Foundation Model Built on 10M+ Recordings"2024150 diagnostic categories, expert-levelarXiv
"ECG-GPT: AI-Based Automated Interpretation of ECG Images"2024Vision-based, format-independentmedRxiv
"ECG-FM: An Open Electrocardiogram Foundation Model"2024Open-weight transformer, 90.9M paramsarXiv
"ECGtizer: Digitizing Paper ECGs with Deep Learning"2024Paper ECG digitizationarXiv
"EchoNext: AI-Enhanced ECG for Structural Heart Disease"2025Structural heart disease detectionPhysioNet

State-of-the-Art Results

PTB-XL Benchmark (Multi-label Classification)

MethodYearMacro F1AUC
Transformer20220.3890.941
ResNet1D-GN20210.3510.928
WaveNet20210.3410.925
LSTM20210.3250.919

CODE-II Benchmark (66-class Classification)

MethodYearMacro F1Accuracy
HeartcareGPT2025-SOTA
VARS2025-Superior performance
Transformer-based2025-High accuracy

MIT-BIH Arrhythmia (5-class)

MethodYearAccuracySensitivity
CNN-LSTM202399.3%98.7%
ResNet202299.1%98.5%
SVM+Wavelet201997.8%96.2%

Foundation Model Benchmarks

MethodYearKey MetricScope
AnyECG2026AUROC >0.7 for 306 diseases1,172 conditions, 13.3M ECGs
ECGFounder2024AUROC >0.95 for 80 diagnoses150 categories, 10.7M ECGs
ECG-FM2024AUROC 0.996 (AF), 0.929 (low LVEF)Open-weight, 1.5M ECGs
CAMEL2026+12.4% on ECGForecastBenchCardiac event forecasting
GEM2025+22.7% explainabilityGrounded multimodal interpretation

Structural Heart Disease Detection

MethodYearAccuracyDataset
EchoNext202477%EchoNext (vs. 64% cardiologists)
AI-ECG for HCM2024HighCleveland Clinic study
  • Foundation Models: Large pre-trained models achieving expert-level performance (ECGFounder, AnyECG, ECG-FM, CardX, ECGFM)
  • ECG Language Models: LLM-based ECG interpretation and report generation (CAMEL, GEM, ELF, RhythmBERT, ECG-GPT)
  • Cardiac Event Forecasting: Predicting future adverse cardiac outcomes from ECG signals (CAMEL's ECGForecastBench)
  • Grounded/Explainable Interpretation: Linking diagnoses to measurable ECG parameters (GEM, VARS)
  • Holistic Health Profiling: ECG-based prediction across 1,000+ conditions including non-cardiac diseases (AnyECG)
  • Self-supervised Learning: Learning from unlabeled ECG data; BYOL and MAE outperform contrastive approaches (OpenECG)
  • Multi-modal Analysis: Combining ECG time series, images, and text (GEM, EchoNext, Heartcare Suite)
  • Large-Scale Datasets: HEEDB (10.6M ECGs), CODE-II (2.7M), MIMIC-IV-ECG (800K), Icentia11k
  • Open-Source Platforms: Democratizing ECG deep learning for non-experts (ExChanGeAI, ECG-FM)
  • Federated Learning: Privacy-preserving ECG analysis across institutions
  • Paper ECG Digitization: Automated recovery of signals from paper records (ECGtizer)
  • Graph-Based Representations: Novel approaches for heterogeneous ECG signals (VARS)
  • Real-Time Analysis: AI-powered platforms for clinical decision support (DeepECG, Qaly)
  • FDA-Cleared Tools: Regulatory-approved AI algorithms for clinical use (HeartKey Rhythm)

πŸš€ Quick Start Guide

1. Environment Setup

pip install wfdb pandas numpy matplotlib scipy
pip install torch torchvision  # For deep learning
pip install scikit-learn xgboost  # For traditional ML

2. Loading PTB-XL Dataset

import wfdb
import pandas as pd
import numpy as np

# Load PTB-XL metadata
Y = pd.read_csv('ptbxl_database.csv', index_col='ecg_id')
X = np.array([wfdb.rdsamp(f'records500/{row.filename_lr}')[0] 
              for _, row in Y.iterrows()])

3. Loading MIT-BIH Dataset

import wfdb

# Load a single record
record = wfdb.rdrecord('mitdb/100')
annotation = wfdb.rdann('mitdb/100', 'atr')

signals = record.p_signal
labels = annotation.symbol

4. Loading CODE-II Dataset (2025)

# CODE-II dataset access instructions
# See: https://arxiv.org/abs/2511.15632
# Dataset contains 2.7M ECGs with 66 diagnostic classes
# Access through official CODE-II repository

5. Basic Preprocessing

from scipy import signal

def preprocess_ecg(ecg_signal, fs=500):
    # Bandpass filter (0.5-40 Hz)
    b, a = signal.butter(2, [0.5, 40], btype='band', fs=fs)
    filtered = signal.filtfilt(b, a, ecg_signal)
    
    # Normalize
    normalized = (filtered - np.mean(filtered)) / np.std(filtered)
    return normalized

πŸ“– Dataset Usage Guidelines

Citation Requirements

When using these datasets, please cite appropriately:

PTB-XL:

Wagner, P., Strodthoff, N., Bousseljot, R. D., Kreiseler, D., Lunze, F. I., Samek, W., & Schaeffter, T. (2020). 
PTB-XL, a large publicly available electrocardiography dataset. Scientific Data, 7(1), 1-15.

MIT-BIH:

Moody GB, Mark RG. The impact of the MIT-BIH Arrhythmia Database. 
IEEE Eng in Med and Biol 20(3):45-50 (May-June 2001).

CODE-II:

[Citation information to be added - see arXiv:2511.15632]

Icentia11k:

[Citation information to be added - see PhysioNet]

HEEDB:

Reyna, M.A., Deepanshi, Weigle, J., et al. (2026).
The Harvard-Emory ECG Database. Scientific Data.

MIMIC-IV-ECG:

Gow, B., Pollard, T., Nathanson, L.A., Johnson, A., Moody, B., Fernandes, C., et al. (2023).
MIMIC-IV-ECG: Diagnostic Electrocardiogram Matched Subset. PhysioNet.

EchoNext:

[Citation information to be added - see PhysioNet]

Ethical Considerations

  • Privacy: All datasets are anonymized, but follow institutional guidelines
  • Clinical Use: These datasets are for research only, not clinical diagnosis
  • Bias: Be aware of demographic and geographic biases in datasets
  • Validation: Always validate models on independent test sets

Data Preprocessing Best Practices

  1. Filtering: Apply appropriate bandpass filters (typically 0.5-40 Hz)
  2. Normalization: Standardize signals for consistent model training
  3. Segmentation: Use appropriate window sizes (typically 2.5-10 seconds)
  4. Augmentation: Consider data augmentation for small datasets
  5. Quality Control: Remove noisy or corrupted recordings

🀝 Contributing

We welcome contributions to this repository! Here's how you can help:

Adding New Datasets

  1. Fork this repository
  2. Add dataset information to the appropriate table
  3. Include proper citations and links
  4. Verify all information is accurate
  5. Submit a pull request

Required Information for New Datasets

  • Dataset name and year
  • Number of records and patients
  • Data format and specifications
  • Access requirements and licensing
  • Official links and citations
  • Any special features or limitations

Updating Existing Information

  • Correction of errors
  • Addition of new papers or benchmarks
  • Updates to access links
  • Performance improvements

Guidelines

  • Verify all links are working
  • Include proper citations
  • Use consistent formatting
  • Provide accurate technical specifications

🏷️ Tags and Keywords

ecg-datasets electrocardiogram cardiology machine-learning deep-learning foundation-models ecg-language-models arrhythmia heart-rhythm physionet clinical-data medical-ai signal-processing healthcare biomedical-engineering cardiac-monitoring ecg-classification heart-disease medical-datasets public-health cardiovascular wearable-devices


πŸ“„ License

This repository is licensed under the MIT License. However, individual datasets may have their own licenses - please check each dataset's specific licensing terms before use.


πŸ“ž Contact & Support


⭐ Star History

If you find this repository useful, please consider giving it a star!

Star History Chart

Last Updated: July 2026 | Total Datasets: 90+ | Total Records: 20,000,000+

aaekay/ecg-datasets

This repository contains updated single soource of public ECG/EKG datasets available

62

0 commits

updated Jul 29, 2026

See the code

README

πŸ«€ Comprehensive ECG Datasets Collection

A curated collection of public ECG datasets for machine learning, research, and clinical applications

Stars Last Updated Contributions Welcome License (local license file unavailable; see change log)

πŸ“‹ Table of Contents


πŸ₯ Clinical ECG Datasets

Large-Scale Clinical Datasets

DatasetYearRecordsPatientsDurationLeadsSample RateAccessLicenseLink
ACS-ECG202619,95518,90910s12-lead500 HzPublicCC BY 4.0Figshare
HEEDB202511,670,0152,167,79510s12-lead250-500 HzCredentialedBDSP LicenseBDSP
CODE-II20252,735,2692,093,80710s12-lead500 HzPublicCC BY 4.0arXiv
MIMIC-IV-ECG2023~800,000~160,00010s12-lead500 HzCredentialedPhysioNet LicensePhysioNet
SPH 12-lead202225,77024,66610-60s12-lead500 HzAcademicCC BY 4.0Nature Data
CODE-15%2021345,779233,7707.3-10.2s12-lead400 HzPublicCC BY 4.0Zenodo
Chapman-Shaoxing202045,15234,90510s12-lead500 HzPublicODC-BYFigshare
PTB-XL202021,83718,88510s12-lead500 HzPublicCC BY 4.0PhysioNet
Georgia 12-lead202010,34410,344Variable12-lead500 HzAcademicPhysioNet LicensePhysioNet
PTB Diagnostic2004549294Variable15-lead1000 HzPublicODC-BYPhysioNet

Specialized Clinical Datasets

DatasetYearRecordsFocusDurationLeadsSample RateAccessLink
ARGO20261,962Post-ischemic ventricular tachycardia2.5s12-lead + EGM1000 HzPublicPhysioNet
VitalDB Arrhythmia2026482Intraoperative arrhythmia~203 hours total1-lead500 HzPublicPhysioNet
Brugada-HUCA2026363Brugada syndrome12s12-lead100 HzPublicPhysioNet
SHDB-AF2025128Atrial Fibrillation~24 hours2-lead200 HzPublicPhysioNet
INCART200375Arrhythmia30 min12-lead257 HzPublicPhysioNet
MIT-BIH AF200025Atrial FibrillationLong-term2-lead250 HzPublicPhysioNet
European ST-T199190ST-T Changes2 hours2-lead250 HzPublicPhysioNet
AHA Database1985154Arrhythmia24 hours2-lead250 HzRestrictedContact AHA
MIT-BIH Arrhythmia198048Arrhythmia30 min2-lead360 HzPublicPhysioNet

Continuous Monitoring Datasets

DatasetYearRecordsPatientsDurationLeadsSample RateAccessLink
Icentia11k20242B beats11,000Up to 2 weeks1-lead250 HzPublicPhysioNet
Sudden Cardiac Death Holter200423234-25 hours2-lead250 HzPublicPhysioNet
Long-Term ST2003868021-24 hours2-3 lead250 HzPublicPhysioNet
Sleep Heart Health Study20035,8045,804Overnight1-lead ECG + PSG250 HzRegisteredNSRR
Apnea-ECG200070707-10 hours1-lead100 HzPublicPhysioNet
MIT-BIH Long-term19997714-22 hours2-lead128 HzPublicPhysioNet
MIT-BIH Normal Sinus Rhythm1999181820-24 hours2-lead128 HzPublicPhysioNet

πŸ”¬ Research ECG Datasets

PhysioNet Research Collections

DatasetYearRecordsSubjectsCondition FocusDurationSample RateAccessLink
Autonomic Aging20211,1041,104Cardiovascular autonomic aging8-45 min1000 HzPublicPhysioNet
EPHNOGRAM20216924Simultaneous ECG and PCGVariable8000 HzPublicPhysioNet
BUT QDB20201815ECG signal quality24+ hours1000 HzPublicPhysioNet
CEBSDB20146020ECG, breathing and SCG5-50 min5000 HzPublicPhysioNet
ECG-ID201431090ECG biometrics20s500 HzPublicPhysioNet
Abdominal and Direct Fetal ECG201255Fetal ECG extraction5 min1000 HzPublicPhysioNet
QT Database2003105105QT interval analysis15 min250 HzPublicPhysioNet
Fantasia Database20004040Heart rate variability120 min250 HzPublicPhysioNet
MIT-BIH Supraventricular19997878Supraventricular arrhythmias30 min128 HzPublicPhysioNet
MIT-BIH ST Change19992828Exercise stressVariable360 HzPublicPhysioNet

Extended Research Datasets

DatasetYearRecordsPatientsSpecial FeaturesAccessLink
Neurotech EEG202623,6074,914Ambulatory EEG with ECG channel, 212,186 hoursCredentialedBDSP
EchoNext2026VariableVariableECG + echocardiogram, structural heart diseaseRestrictedPhysioNet
BBBD20265 experiments178EEG + ECG + eye tracking during educational videosPublicProject
Yoga EEG-ECG-Video20264949Concentration and mind-wandering, BIDS formatPublicNature Data
MIMIC-III-Ext-PPG20264,920,4876,131PPG with simultaneous ECG, ABP and respirationCredentialedPhysioNet
MEETI2026784,680160,597ECG signals, images, features and interpretationsCredentialedGitHub
PSG-IPA20262020PSG with ECG and multi-scorer annotationsPublicPhysioNet
HOME2025VariableVariableEvaluation-only consumer single-lead ECG benchmarkPublicZenodo
HK1K20251,0321,032Pediatric EEG + ECG around NREM sleep onsetPublicZenodo
tOLIet202514986Thigh ECG from toilet-seat dry electrodesPublicPhysioNet
OpenECG20251,200,000MultipleFoundation model benchmark, 9 centersPublicarXiv
Heartcare-220K2025220,000220,000Multimodal framework, disease diagnosisPublicarXiv
Icentia11k20242B beats11,000Continuous ECG, up to 2 weeksPublicPhysioNet
PTB-XL+202321,83718,885Enhanced with extracted featuresPublicPhysioNet
LUDB2020200200Lobachevsky University, annotatedPublicPhysioNet
UVA ECG20191,000+1,000+University of Virginia collectionAcademicRequest Access
WESAD20181515Wearable chest ECG and multimodal stress signalsPublicUCI

πŸ† Competition ECG Datasets

PhysioNet/CinC Challenges

ChallengeYearRecordsTaskBest PerformanceAccessLink
Challenge 202620266,600 training PSGsCognitive impairment prediction from sleep studiesOfficial phasePublicMoody Challenge
Challenge 20252025Multiple sourcesChagas disease detection from ECGResults releasedPublicMoody Challenge
Challenge 2024202421,799 imagesECG Image DigitizationResults releasedPublicMoody Challenge
Challenge 2021202188,253Multi-lead ECG ClassificationF1: 0.71PublicPhysioNet
Challenge 2020202043,10112-lead ECG ClassificationF1: 0.533PublicPhysioNet
Challenge 2017201712,186AF DetectionF1: 0.83PublicPhysioNet
Challenge 201520151,000Reducing False AlarmsScore: 81.39PublicPhysioNet

CPSC (China Physiological Signal Challenge)

ChallengeYearRecordsTaskLeadsSample RateAccessLink
CPSC 202120213,453Paroxysmal AF Detection1-lead200 HzPublicCPSC β€” unavailable
CPSC 201920196,877Multi-label Classification12-lead500 HzPublicCPSC
CPSC 2018201813,244AF Detection1-lead300 HzPublicCPSC

Other Competition Datasets

DatasetPlatformYearRecordsTaskAccessLink
ECG-5000Various20245,000Anomaly DetectionPublicUCR Archive
PTB-XL ECG ImagesKaggle202421,837Synthetic ECG ImagesPublicKaggle
ECG Arrhythmia ClassificationKaggle20204 sourcesMulti-class ClassificationPublicKaggle
ECG Heartbeat CategorizationKaggle2019109,446Beat ClassificationPublicKaggle

πŸ“Š Dataset Comparison

By Size and Scale

DatasetRecordsPatientsTotal HoursData SizeYear
HEEDB11,670,0152,167,79532,417Variable2025
CODE-II2,735,2692,093,8077,598~500 GB2025
MIMIC-IV-ECG~800,000~160,000~2,222~150 GB2023
CODE-15%345,779233,770~960Variable2021
PhysioNet 202188,25388,253245.1~15 GB2021
Chapman-Shaoxing45,15234,905125.4~8.2 GB2020
SPH 12-lead25,77024,666Variable~5.1 GB2022
PTB-XL21,83718,88560.7~2.5 GB2020
MIT-BIH Arrhythmia484724~23 MB1980

By Clinical Condition

ConditionPrimary DatasetsTotal RecordsBest Performance
ArrhythmiaMIT-BIH, PTB-XL, Chapman, CODE-II, HEEDB14,000,000+99.3% Acc
Atrial FibrillationMIT-BIH AF, CPSC 2018/2021, Icentia11k, MIMIC-IV-ECG800,000+AUROC: 0.996 (ECG-FM)
Myocardial InfarctionPTB-XL, PTB Diagnostic, CODE-II, HEEDB14,000,000+AUC: 0.95+
Structural Heart DiseaseEchoNextVariable77% Acc (EchoNext)
Normal vs AbnormalAll major datasets20,000,000+98.7% Acc
Multi-label (150+ classes)HEEDB, PTB-XL, Chapman, SPH, CODE-II14,000,000+AUROC >0.95 (ECGFounder)

By Data Type and Format

Data TypeDatasetsAdvantagesUse Cases
Raw WaveformHEEDB, PTB-XL, Chapman, MIT-BIH, CODE-II, Icentia11k, MIMIC-IV-ECGHigh fidelity, full informationDeep learning, signal processing
Continuous MonitoringIcentia11k, Long-Term ST, Sudden Cardiac Death Holter, Apnea-ECGLong-term recordings, hours to weeksArrhythmia detection, HRV analysis
Processed FeaturesPTB-XL+Pre-extracted featuresTraditional ML, quick prototyping
ImagesPTB-XL Images, Challenge 2024Visual interpretationComputer vision, image-based ML
MultimodalEchoNext, MEETI, BBBD, HK1K, Heartcare-220KECG + other clinical dataComprehensive diagnosis
Foundation Model TrainingHEEDB, OpenECG, MIMIC-IV-ECGLarge-scale pre-trainingSelf-supervised learning, transfer learning
AnnotationsMost PhysioNet datasets, HEEDB, ARGO, VitalDB Arrhythmia, BUT QDBExpert labels, ICD codesSupervised learning, validation

πŸ› οΈ Tools & Libraries

Data Access and Processing

ToolLanguagePurposeInstallation
WFDBPython/MATLABPhysioNet data accesspip install wfdb
NeuroKit2PythonNeurophysiological signalspip install neurokit2
BioSPPyPythonBiosignal processingpip install biosppy
HeartPyPythonHeart rate analysispip install heartpy
PyECGPythonECG analysis toolkitpip install pyecg
ECGtizerPythonPaper ECG digitizationGitHub β€” unavailable
CardioMarkMATLABECG annotation toolGitHub

Visualization and Analysis

ToolPurposeKey Features
ECG-PlotECG visualizationMulti-lead plotting, annotations
PlotlyECGInteractive plotsWeb-based, interactive ECG plots
MatplotlibStatic plotsPublication-quality figures
BokehInteractive visualizationReal-time ECG monitoring

AI-Powered ECG Analysis Tools

ToolPurposeKey FeaturesAccess
DeepECGReal-time ECG analysisComprehensive measurements, AI-poweredDeepECG.ai
QalyExpert ECG reviewCertified experts, 30+ rhythm detectionQaly.co
HeartKey RhythmFDA-cleared ECG evaluationSuite of algorithms, wearable device supportB-Secur
EchoNextStructural heart disease detectionECG + Echocardiogram, 77% accuracyPhysioNet
VARSVersatile ECG analysisGraph-based representation, risk-sensitivearXiv

ECG Foundation Models

ModelYearTraining DataParametersKey CapabilityOpen SourceLink
ECGFounder202410.7M ECGs (HEEDB)-150 diagnostic categories, AUROC >0.95 for 80 diagnosesYesarXiv, GitHub
AnyECG202613.3M ECGs-1,172 conditions, holistic health profiling, future risk prediction-arXiv
ECG-FM20241.5M ECGs (MIMIC-IV + PhysioNet)90.9MAF detection AUROC 0.996, open weightsYesarXiv, GitHub
CardX20251M+ ECGsEfficientExChanGeAI platform, local fine-tuningYes (MIT)arXiv
ECGFM20251M+ multi-center ECGs-Contrastive + generative + diagnostic text generation-ScienceDirect

ECG Language Models

ModelYearTaskKey InnovationLink
ECG-GPT2024ECG image interpretationVision encoder-decoder, format-independent, validated on 3.8M ECGsmedRxiv
CAMEL2026Cardiac event forecastingFirst ELM for forecasting, +7% on ECGBench, +12.4% on ECGForecastBencharXiv
GEM2025Grounded ECG understandingUnifies time series + images + text, NeurIPS 2025, +22.7% explainabilityarXiv, GitHub
ELF2026ECG interpretationEncoder-free, single projection layer, matches SOTAarXiv
RhythmBERT2026Heart disease detectionSelf-supervised on latent ECG representationsarXiv

Machine Learning Frameworks

FrameworkECG-Specific FeaturesPopular Models
TensorFlowtf.signal for ECG processingCNN, LSTM, Transformers
PyTorchtorchaudio for signalsResNet1D, WaveNet, TCN
scikit-learnClassical ML algorithmsSVM, Random Forest, XGBoost

πŸ“š Benchmarks & Papers

Key Survey Papers

PaperYearCitationsFocus
"A Systematic Review on Foundation Models for Electrocardiogram Analysis"2025NewFoundation model architectures, pre-training, adaptation
"Deep learning and electrocardiography: systematic review"2025New198 publications, comprehensive DL survey
"Generalizability of electrocardiographic artificial intelligence"2025NewECG-AI generalizability across populations
"Deep Learning for ECG Analysis: Benchmarks and Insights from PTB-XL"2021400+PTB-XL benchmarking
"Automatic diagnosis of the 12-lead ECG using a deep neural network"2020800+Deep learning methods
"ECG arrhythmia classification using a 2-D convolutional neural network"20181000+CNN for arrhythmia

Recent High-Impact Papers (2024-2026)

PaperYearFocusLink
"CAMEL: An ECG Language Model for Forecasting Cardiac Events"2026First ELM for cardiac event forecastingarXiv
"RhythmBERT: Self-Supervised Language Model for Heart Disease Detection"2026Self-supervised latent ECG representationsarXiv
"AnyECG: Evolved ECG Foundation Model for Holistic Health Profiling"20261,172 conditions, future risk predictionarXiv
"ELF: Encoder-Free ECG Language Model"2026Simplified ELM architecturearXiv
"Harvard-Emory ECG Database"2026Largest credentialed ECG database (11.7M ECGs)Nature Data
"GEM: Empowering MLLM for Grounded ECG Understanding"2025Multimodal ECG + images + text, NeurIPS 2025arXiv
"OpenECG: Benchmarking ECG Foundation Models with 1.2M Records"2025Foundation model benchmark, 9 centersarXiv
"ExChanGeAI: End-to-End Platform for ECG Analysis and Fine-tuning"2025Open-source ECG platform + CardX modelarXiv
"CODE-II: A Large-Scale ECG Dataset with 66 Diagnostic Classes"2025Large-scale clinical datasetarXiv
"VARS: VersAtile and Risk-Sensitive Cardiac Diagnosis"2025Graph-based ECG representationarXiv
"Heartcare Suite: Multimodal Framework for ECG Analysis"2025Multimodal ECG analysis, HeartcareGPTarXiv
"ECGFM: A Foundation Model Trained on Multi-Center Million-ECG Dataset"2025Contrastive + generative pre-trainingScienceDirect
"ECGFounder: An ECG Foundation Model Built on 10M+ Recordings"2024150 diagnostic categories, expert-levelarXiv
"ECG-GPT: AI-Based Automated Interpretation of ECG Images"2024Vision-based, format-independentmedRxiv
"ECG-FM: An Open Electrocardiogram Foundation Model"2024Open-weight transformer, 90.9M paramsarXiv
"ECGtizer: Digitizing Paper ECGs with Deep Learning"2024Paper ECG digitizationarXiv
"EchoNext: AI-Enhanced ECG for Structural Heart Disease"2025Structural heart disease detectionPhysioNet

State-of-the-Art Results

PTB-XL Benchmark (Multi-label Classification)

MethodYearMacro F1AUC
Transformer20220.3890.941
ResNet1D-GN20210.3510.928
WaveNet20210.3410.925
LSTM20210.3250.919

CODE-II Benchmark (66-class Classification)

MethodYearMacro F1Accuracy
HeartcareGPT2025-SOTA
VARS2025-Superior performance
Transformer-based2025-High accuracy

MIT-BIH Arrhythmia (5-class)

MethodYearAccuracySensitivity
CNN-LSTM202399.3%98.7%
ResNet202299.1%98.5%
SVM+Wavelet201997.8%96.2%

Foundation Model Benchmarks

MethodYearKey MetricScope
AnyECG2026AUROC >0.7 for 306 diseases1,172 conditions, 13.3M ECGs
ECGFounder2024AUROC >0.95 for 80 diagnoses150 categories, 10.7M ECGs
ECG-FM2024AUROC 0.996 (AF), 0.929 (low LVEF)Open-weight, 1.5M ECGs
CAMEL2026+12.4% on ECGForecastBenchCardiac event forecasting
GEM2025+22.7% explainabilityGrounded multimodal interpretation

Structural Heart Disease Detection

MethodYearAccuracyDataset
EchoNext202477%EchoNext (vs. 64% cardiologists)
AI-ECG for HCM2024HighCleveland Clinic study
  • Foundation Models: Large pre-trained models achieving expert-level performance (ECGFounder, AnyECG, ECG-FM, CardX, ECGFM)
  • ECG Language Models: LLM-based ECG interpretation and report generation (CAMEL, GEM, ELF, RhythmBERT, ECG-GPT)
  • Cardiac Event Forecasting: Predicting future adverse cardiac outcomes from ECG signals (CAMEL's ECGForecastBench)
  • Grounded/Explainable Interpretation: Linking diagnoses to measurable ECG parameters (GEM, VARS)
  • Holistic Health Profiling: ECG-based prediction across 1,000+ conditions including non-cardiac diseases (AnyECG)
  • Self-supervised Learning: Learning from unlabeled ECG data; BYOL and MAE outperform contrastive approaches (OpenECG)
  • Multi-modal Analysis: Combining ECG time series, images, and text (GEM, EchoNext, Heartcare Suite)
  • Large-Scale Datasets: HEEDB (10.6M ECGs), CODE-II (2.7M), MIMIC-IV-ECG (800K), Icentia11k
  • Open-Source Platforms: Democratizing ECG deep learning for non-experts (ExChanGeAI, ECG-FM)
  • Federated Learning: Privacy-preserving ECG analysis across institutions
  • Paper ECG Digitization: Automated recovery of signals from paper records (ECGtizer)
  • Graph-Based Representations: Novel approaches for heterogeneous ECG signals (VARS)
  • Real-Time Analysis: AI-powered platforms for clinical decision support (DeepECG, Qaly)
  • FDA-Cleared Tools: Regulatory-approved AI algorithms for clinical use (HeartKey Rhythm)

πŸš€ Quick Start Guide

1. Environment Setup

pip install wfdb pandas numpy matplotlib scipy
pip install torch torchvision  # For deep learning
pip install scikit-learn xgboost  # For traditional ML

2. Loading PTB-XL Dataset

import wfdb
import pandas as pd
import numpy as np

# Load PTB-XL metadata
Y = pd.read_csv('ptbxl_database.csv', index_col='ecg_id')
X = np.array([wfdb.rdsamp(f'records500/{row.filename_lr}')[0] 
              for _, row in Y.iterrows()])

3. Loading MIT-BIH Dataset

import wfdb

# Load a single record
record = wfdb.rdrecord('mitdb/100')
annotation = wfdb.rdann('mitdb/100', 'atr')

signals = record.p_signal
labels = annotation.symbol

4. Loading CODE-II Dataset (2025)

# CODE-II dataset access instructions
# See: https://arxiv.org/abs/2511.15632
# Dataset contains 2.7M ECGs with 66 diagnostic classes
# Access through official CODE-II repository

5. Basic Preprocessing

from scipy import signal

def preprocess_ecg(ecg_signal, fs=500):
    # Bandpass filter (0.5-40 Hz)
    b, a = signal.butter(2, [0.5, 40], btype='band', fs=fs)
    filtered = signal.filtfilt(b, a, ecg_signal)
    
    # Normalize
    normalized = (filtered - np.mean(filtered)) / np.std(filtered)
    return normalized

πŸ“– Dataset Usage Guidelines

Citation Requirements

When using these datasets, please cite appropriately:

PTB-XL:

Wagner, P., Strodthoff, N., Bousseljot, R. D., Kreiseler, D., Lunze, F. I., Samek, W., & Schaeffter, T. (2020). 
PTB-XL, a large publicly available electrocardiography dataset. Scientific Data, 7(1), 1-15.

MIT-BIH:

Moody GB, Mark RG. The impact of the MIT-BIH Arrhythmia Database. 
IEEE Eng in Med and Biol 20(3):45-50 (May-June 2001).

CODE-II:

[Citation information to be added - see arXiv:2511.15632]

Icentia11k:

[Citation information to be added - see PhysioNet]

HEEDB:

Reyna, M.A., Deepanshi, Weigle, J., et al. (2026).
The Harvard-Emory ECG Database. Scientific Data.

MIMIC-IV-ECG:

Gow, B., Pollard, T., Nathanson, L.A., Johnson, A., Moody, B., Fernandes, C., et al. (2023).
MIMIC-IV-ECG: Diagnostic Electrocardiogram Matched Subset. PhysioNet.

EchoNext:

[Citation information to be added - see PhysioNet]

Ethical Considerations

  • Privacy: All datasets are anonymized, but follow institutional guidelines
  • Clinical Use: These datasets are for research only, not clinical diagnosis
  • Bias: Be aware of demographic and geographic biases in datasets
  • Validation: Always validate models on independent test sets

Data Preprocessing Best Practices

  1. Filtering: Apply appropriate bandpass filters (typically 0.5-40 Hz)
  2. Normalization: Standardize signals for consistent model training
  3. Segmentation: Use appropriate window sizes (typically 2.5-10 seconds)
  4. Augmentation: Consider data augmentation for small datasets
  5. Quality Control: Remove noisy or corrupted recordings

🀝 Contributing

We welcome contributions to this repository! Here's how you can help:

Adding New Datasets

  1. Fork this repository
  2. Add dataset information to the appropriate table
  3. Include proper citations and links
  4. Verify all information is accurate
  5. Submit a pull request

Required Information for New Datasets

  • Dataset name and year
  • Number of records and patients
  • Data format and specifications
  • Access requirements and licensing
  • Official links and citations
  • Any special features or limitations

Updating Existing Information

  • Correction of errors
  • Addition of new papers or benchmarks
  • Updates to access links
  • Performance improvements

Guidelines

  • Verify all links are working
  • Include proper citations
  • Use consistent formatting
  • Provide accurate technical specifications

🏷️ Tags and Keywords

ecg-datasets electrocardiogram cardiology machine-learning deep-learning foundation-models ecg-language-models arrhythmia heart-rhythm physionet clinical-data medical-ai signal-processing healthcare biomedical-engineering cardiac-monitoring ecg-classification heart-disease medical-datasets public-health cardiovascular wearable-devices


πŸ“„ License

This repository is licensed under the MIT License. However, individual datasets may have their own licenses - please check each dataset's specific licensing terms before use.


πŸ“ž Contact & Support


⭐ Star History

If you find this repository useful, please consider giving it a star!

Star History Chart

Last Updated: July 2026 | Total Datasets: 90+ | Total Records: 20,000,000+