Is a continuous glucose monitor worth it if you're not diabetic?
If you want to run experiments on yourself, yes, with a caveat: a CGM is worth roughly two to eight weeks of your attention, not a permanent subscription. In the US you can now buy one without a prescription for about $89–$99 per month (Dexcom Stelo, Abbott Lingo, Abbott Libre Rio), stick it on the back of your upper arm, and get a glucose estimate every 1–5 minutes. The value is in the designed experiments you run during those weeks, not in watching the line. After the second or third sensor, most people have learned what they were going to learn, and the marginal information per dollar collapses.
A sensor does not measure blood glucose. It measures glucose in interstitial fluid via a subcutaneous electrode, and a proprietary algorithm converts current to a mg/dL estimate. Interstitial glucose lags plasma glucose by roughly 5–15 minutes during rapid change, which is why your “spike” timestamps are systematically late and why comparing a fingerstick to a sensor reading mid-rise will always look like sensor error when it is physiology plus filtering.
Which sensor we’d buy
We would buy Dexcom Stelo for analysis work. It samples every 5 minutes, streams to the phone over BLE without you doing anything, and Dexcom Clarity produces a clean CSV export. Abbott’s Lingo and Libre Rio are fine hardware, but Abbott’s consumer apps are more aggressive about giving you a proprietary score instead of numbers, and export is clumsier.
One distinction that still matters when you read older literature and older forum posts: flash glucose monitoring required you to scan the sensor with a phone or reader to retrieve the stored trace, which means gaps whenever you slept longer than the 8-hour buffer, while true continuous systems push data automatically. The two were routinely conflated in early papers and marketing, and the difference changes what you can compute from a trace 1. Current sensors from both vendors stream continuously, so this is mostly an archaeology problem.
Accuracy: modern sensors report MARD (mean absolute relative difference versus a lab reference) in the high single digits, around 8–9%. Treat that as a scale factor on everything you compute. A 10 mg/dL difference between two meals is inside the noise. A 50 mg/dL difference is not.
Over-the-counter sensors are deliberately limited. Stelo does not display values below 40 or above 400 mg/dL and does not have urgent low alarms. If you have a reason to expect hypoglycemia, you need a prescription device and a clinician, not a wellness sensor.
Getting the raw data out
Dexcom Clarity: web app, Account → Export, choose a date range, get a CSV. Columns you care about:
Index, Timestamp (YYYY-MM-DDThh:mm:ss), Event Type, Event Subtype,
Source Device ID, Glucose Value (mg/dL), Glucose Rate of Change (mg/dL/min),
Transmitter Time (Long Integer), Transmitter ID
Event Type is EGV for sensor readings and Calibration, Insulin, Carbs, or Health for logged events. Filter to EGV first. Low and high readings come through as the strings Low and High, not numbers, so pd.to_numeric(..., errors='coerce') and count how many you dropped.
Abbott’s export gives Device Timestamp, Record Type, Historic Glucose mg/dL, Scan Glucose mg/dL. Record Type 0 is the automatic 15-minute historic record, 1 is a manual scan. Use record type 0 only, or your sampling density will correlate with how interested you were at the time.
Minimum viable load:
import pandas as pd
df = pd.read_csv("clarity.csv")
egv = df[df["Event Type"] == "EGV"].copy()
egv["t"] = pd.to_datetime(egv["Timestamp (YYYY-MM-DDThh:mm:ss)"])
egv["g"] = pd.to_numeric(egv["Glucose Value (mg/dL)"], errors="coerce")
s = egv.set_index("t")["g"].resample("5min").mean().interpolate(limit=3)
The limit=3 matters: interpolating across a 4-hour BLE dropout invents a flat line that will silently inflate your time-in-range. Count gaps explicitly before you interpolate.
For live streaming rather than retrospective export, Dexcom’s developer API (api.dexcom.com, OAuth2, /v3/users/self/egvs) returns EGVs with about a 3-hour delay on the production endpoint. If you want real-time, the community stack is xDrip+ on Android reading the sensor’s BLE advertisements directly, writing to a Nightscout instance (MongoDB behind a Node server you host). That is more moving parts than most people need for a two-week experiment.
Metrics worth computing
Mean and standard deviation, then coefficient of variation (CV = SD/mean). CV below about 36% is the consensus threshold separating stable from unstable glycemia in clinical populations, and non-diabetic adults typically sit far below it. CV is the single most informative number in a CGM trace because it is scale-free and insensitive to the sensor’s calibration offset.
Time in range 70–180 mg/dL, reported as percentage of valid readings, plus explicit reporting of the denominator.
GMI (glucose management indicator), the CGM-derived estimate of A1c: GMI(%) = 3.31 + 0.02392 × mean glucose (mg/dL). Useful as a sanity check against a lab A1c drawn in the same window. A large divergence usually means red cell turnover, not a broken sensor, and that is a conversation for a clinician.
Incremental AUC per meal, which is the metric that answers “what does this food do to me”. Take baseline as the mean of the 15 minutes before the first bite, integrate glucose above baseline over 120 minutes by trapezoid, clipping negative excursions to zero:
import numpy as np
def iauc(series, t0, minutes=120):
w = series[t0 - pd.Timedelta("15min") : t0 + pd.Timedelta(minutes=minutes)]
base = w[:t0].mean()
y = np.clip(w[t0:].values - base, 0, None)
return np.trapz(y, dx=5) / 60.0 # mg/dL * hours
The literature on variability metrics is large and mostly redundant: MAGE, CONGA, MODD, J-index, LBGI/HBGI. Most are strongly correlated with each other and with plain SD, and the profusion of indices without agreed standards has been a persistent obstacle to comparing studies 2. We compute CV, TIR, and per-meal iAUC and stop.
Failure modes that will fool you
First 12–24 hours after insertion. Wound response and sensor equilibration make day 1 noisier and often biased low. Discard it. Two sensors overlapped by a day gives you continuous coverage and a free duplicate measurement.
Compression lows. Sleeping on the sensor restricts local perfusion and produces a smooth 40–60 mg/dL dip that recovers within minutes of rolling over. It looks exactly like nocturnal hypoglycemia. The tell is the shape (fast fall, flat floor, fast recovery) and that it coincides with a sleep position, not a meal. Do not interpret a compression low as a metabolic event.
Confounded meal tests. Glucose response to an identical meal varies with prior exercise, sleep, time of day, and the preceding meal. Exercise in particular does strange things to the trace: in endurance athletes, CGM readings diverge from blood glucose during and after hard efforts, and the interpretation of those excursions for performance is not settled 3. If you want to compare two foods, eat each three times on separate days, in the same 90-minute window, with the same prior meal, and compare median iAUC.
Sensor-to-sensor bias. Two sensors worn simultaneously can differ by 10–15 mg/dL in mean. Never compare a mean from sensor A to a mean from sensor B and call the difference a result. Compare within a sensor.
A two-week protocol we’d run
Days 1–4: no intervention. Eat normally, log timestamps only. This is your baseline distribution and your dropout audit.
Days 5–10: standardized challenges, one per day, fasted or after a fixed breakfast. Repeat each challenge on at least two separate days. Fixed-quantity foods only, weighed, so the dose is a number.
Days 11–14: pairwise tests of the things the first ten days flagged. Same food, one variable changed (order of components, a 15-minute walk after, time of day).
Then export, compute, write it down, and take the sensor off. If any of what you see concerns you, bring the CSV and the plots to a physician. A CGM does not diagnose anything, and the over-the-counter versions are explicitly not diagnostic devices.
Questions people also ask
How much does a CGM cost without insurance? In the US, over-the-counter sensors run about $89–$99 for a month (two 15-day sensors) as of 2025, with a small discount on subscription. There is no reader to buy, since the phone is the reader. Globally the picture is very different: surveys across six low- and middle-income countries found even basic self-monitoring supplies were frequently unavailable and unaffordable, with test strips costing multiple days’ wages per month 4.
Will insurance cover a CGM? For people with diabetes, often yes, under rules that generally require a diagnosis plus insulin use or documented hypoglycemia. For non-diabetic self-tracking, essentially never, and the over-the-counter versions are sold as a cash purchase for that reason. Coverage rules, deductibles, and pharmacy-versus-DME billing change what you pay by a lot, and reviewing that with your clinician or pharmacist before you start is worth the phone call 5.
Is a CGM cheaper than fingersticks? Not per day, but the comparison depends on how many strips you would otherwise use. A real-world cost-consequences analysis in type 1 diabetes pregnancy found CGM costs exceeded self-monitoring costs on supplies while shifting other categories of spending 6. For a healthy person running a two-week experiment, the relevant comparison is a couple hundred dollars against the value of the data.
Can I just buy one? In the US, yes: Stelo, Lingo, and Libre Rio are cleared for over-the-counter sale to adults not using insulin. Outside the US, prescription rules vary by country.
Oak builds longitudinal molecular profiles of individuals: whole-genome sequencing, RNA sequencing, proteomics, blood biomarkers, and continuous glucose data, integrated into one model of you. Build your profile.
Footnotes
-
Lutz Heinemann, Guido Freckmann. CGM Versus FGM; or, Continuous Glucose Monitoring Is Not Flash Glucose Monitoring. Journal of Diabetes Science and Technology, 2015. https://doi.org/10.1177/1932296815603528 ↩
-
David Rodbard. Continuous Glucose Monitoring: A Review of Successes, Challenges, and Opportunities. Diabetes Technology & Therapeutics, 2016. https://doi.org/10.1089/dia.2015.0417 ↩
-
Mikael Flockhart, Filip J. Larsen. Continuous Glucose Monitoring in Endurance Athletes: Interpretation and Relevance of Measurements for Improving Performance and Health. Sports Medicine, 2023. https://doi.org/10.1007/s40279-023-01910-4 ↩
-
Margaret Ewen, Molly Lepeska, Aida Abdraimova, et al. Availability, prices and affordability of self-monitoring blood glucose devices: surveys in six low-income and middle-income countries. BMJ Public Health, 2025. https://doi.org/10.1136/bmjph-2024-001128 ↩
-
Joseph R. Herges, Joshua J. Neumiller, Rozalina G. McCoy. Easing the Financial Burden of Diabetes Management: A Guide for Patients and Primary Care Clinicians. Clinical Diabetes, 2021. https://doi.org/10.2337/cd21-0004 ↩
-
Michael J. DiStefano, R. Brett McQueen, Valerie Gao, et al. The Cost of Continuous Glucose Monitoring Versus Self-Monitoring of Blood Glucose in Type 1 Diabetes Pregnancies in the United States: A Cost-Consequences Analysis Using Real-World Evidence. Diabetes Technology & Therapeutics, 2025. https://doi.org/10.1089/dia.2024.0478 ↩