Dataset guide · Updated Oct 2026

Best SpO2 and pulse oximetry datasets (and skin tone fairness)

Most public PPG datasets do not contain what SpO2 research needs: raw red and infrared channels paired with an arterial blood gas (SaO2) reference and recorded skin tone. OpenOximetry on PhysioNet was created specifically to study oximeter accuracy, including skin colour. The Pulse Transit Time PPG dataset provides raw red, infrared and green PPG at two finger sites with spot SpO2. BIDMC gives 125 Hz ICU PPG with monitor SpO2 at 1 Hz, which is a device reading, not a blood-gas reference.

Best SpO2 and pulse oximetry datasets (and skin tone fairness): ChatPPG research summary card

Top picks and when to use each

  1. #1OpenOximetry Repository (PhysioNet Restricted)Best for: Skin-tone and oximeter accuracy research

    A repository of clinical and lab pulse oximetry data built to study how physiology and device factors, including skin colour, affect oximeter accuracy.

    Access: PhysioNetOriginal host
  2. #2Pulse Transit Time PPGBest for: Raw multi-wavelength (red / IR / green) PPG

    Two MAX30101 finger sensors recording red, infrared and green PPG, plus ECG, IMU and attachment pressure. SpO2 from an iHealth pulse oximeter at the start and end of each activity. Signals are unfiltered.

    Access: Open (ODbL 1.0)Original host
  3. #3BIDMC PPG and Respiration (Pimentel 2016 / PhysioNet)Best for: ICU PPG with monitor SpO2, HR and RR

    53 eight-minute recordings from BIDMC ICU patients: PPG, impedance respiration and ECG at 125 Hz, and HR, RR and SpO2 at 1 Hz, with manual breath annotations from two annotators.

    Access: Open (ODC-By 1.0)Original host
  4. #4SDBBest for: Phone oximeter recordings in children

    Phone-oximeter pleth at 62.5 Hz and SpO2 at 1 Hz for 146 subjects, with AHI values.

    Access: Open (CC BY 4.0)Original host
  5. #5UQVitalSignsBest for: Anaesthesia monitoring with pleth and SpO2

    32 surgical cases with multi-parameter monitoring.

    Access: Open (CC BY-NC 3.0, non-commercial)Original host

Comparison table

12 datasets. Swipe sideways on mobile. Values come from each dataset record; open a dataset for sources. Popularity is cached at build time: OpenAlex citations of the source paper (or the dataset DOI when no paper is linked), results on ChatPPG leaderboards, and GitHub stars or Zenodo / Hugging Face downloads where the host reports them. Hover for the source; a dash means unknown.

SignalsSamplingGround truthLicenceAccess
OpenOximetry Repository (PhysioNet Restricted)—PPG, ECG, SPO2, ABP, etco2high-frequency; exact Hz in data diction…SPO2See hostPhysioNet—
Pulse Transit Time PPG22PPG, ECG, accel, gyro1000 Hz, 500 Hz, 80 HzSPO2, cuff BP, activity, SQIODbL 1.0Open (ODbL 1.0)25 cited
BIDMC PPG and Respiration (Pimentel 2016 / PhysioNet)53PPG, ECG, resp, SPO2125 Hz, 1 HzSPO2, HR, resp rateODC-By 1.0Open (ODC-By 1.0)387 cited
SDB146PPG, SPO262.5 HzSPO2CC BY 4.0Open (CC BY 4.0)5 cited
UQVitalSigns32PPG, ECG, resp, SPO2, co2100 HzSPO2CC BY-NC 3.0Open (CC BY-NC 3.0, non-commercial)151 cited
DOSE-I171PPG, ECG, EEG, resp, SPO2250 Hz, 500 Hz, 125 Hzcuff BP, SPO2, HR, resp rateSee hostSee host0 cited821 downloads
HealthRing RingDatasetV2.154PPG, accel, ECG, resp100 Hz, 128 Hzcuff BP, HR, resp rate, SPO2See hostSee host0 cited47 stars288 downloads
MIMIC-III-Ext-CA31PPG, ECGAnnotations only; waveforms from MIMIC-I…SPO2, AFIBSee hostSee host0 cited
MIMIC3-AF-Bashar70PPG, ECG, resp, ABP—SPO2, AFIB, activityCC BY 4.0See host5 cited
MW-PPG-HR20PPG, ECG, accel100Hz, 200HzHR, vascular age, ECGSee hostSee host0 cited0 stars
Respiratory and Pulse Oximetry Waveforms from Healthy Adults During Simulated Apnoea Events—PPG, resp—SPO2See hostSee host0 cited
WF-PPG27PPG, ECG, SPO2, contact pressure100 Hz, 128 Hz, 80 Hzcuff BP, HR, SPO2CC BY 4.0See host23 cited12 stars

Preprocessing pitfalls

  • A monitor SpO2 value is not ground truth. Pulse oximeters themselves carry the skin-tone bias you may be trying to measure; use arterial SaO2 when the question is accuracy.
  • Many datasets release only a single green or infrared channel. Ratio-of-ratios SpO2 needs both red and infrared from the same site.
  • Skin tone is rarely recorded, and self-reported race is not a measure of skin pigmentation. Check whether a dataset reports an objective measure before using it for fairness claims.
  • Healthy volunteers rarely desaturate. Without hypoxia (controlled desaturation or patients), you cannot evaluate the low-SpO2 range where bias matters most.

FAQ

Is there a public dataset for pulse oximeter skin tone bias?

OpenOximetry on PhysioNet was built for this: it collects clinical and lab pulse oximetry data to study how physiology and device factors, including skin colour, affect oximeter accuracy.

Which datasets have raw red and infrared PPG?

The Pulse Transit Time PPG dataset records red, infrared and green PPG at two finger sites with MAX30101 sensors. Most consumer-wearable datasets release only processed or green-channel PPG.

Does BIDMC contain SpO2?

Yes. BIDMC includes SpO2, heart rate and respiratory rate from the bedside monitor at 1 Hz alongside 125 Hz PPG, ECG and impedance respiration, for 53 eight-minute recordings.

Sources