A lightweight, always-on-top Windows desktop overlay that displays your real-time Dexcom CGM glucose reading. Built with C# / WPF and the Dexcom Share API.
- Always-on-top borderless widget showing your current glucose value
- Color-coded by threshold: green (in range), yellow (high), orange (low), red (urgent)
- Trend arrows showing glucose direction (↑↑ ↑ ↗ → ↘ ↓ ↓↓)
- Draggable — place it anywhere on screen; position is remembered between sessions
- Minimal footprint — sits unobtrusively on your desktop
- Full glucose timeline graph with color-coded data points and connecting lines
- Adjustable time windows: 1h, 3h, 6h, 12h, 24h
- Threshold zone overlays showing your configured ranges
- Alert markers (▲) indicating where alerts would have triggered
- Hover tooltips with exact value, time, and trend for each data point
- Resizable window — graph redraws dynamically
- Windows toast notifications for predicted lows and highs
- Alerts when glucose is trending toward your thresholds
- Urgent alerts for values already outside safe range
- Configurable cooldown to prevent notification spam (default: 15 min)
- No-data alert — notifies you when no glucose data has been received for a configurable period (default: 30 min)
- Suppress alerts globally or on a per-alert-type basis (Urgent Low, Low, Predicted Low, High, Predicted High, Urgent High, No Data)
- Timer-based suppression: suppress for 10 min, 30 min, 1 hour, 2 hours, or indefinitely
- Schedule-based suppression: suppress during specific hours on specific days (e.g., overnight 22:00–07:00)
- Visual indicator: a yellow ⚠ icon appears on the overlay when any alerts are suppressed — click it to open the suppression configuration window
- Access via the ⚠ icon on the overlay or right-click → Alert Suppression...
- Dexcom Share credentials (username, password, region)
- Refresh interval, font size, opacity
- Glucose thresholds (urgent low, low, high, urgent high)
- Toggle mmol/L or mg/dL
- Enable/disable predictive alerts
- Enable/disable no-data alert with configurable threshold (minutes)
- Alert suppression configuration (timer and schedule-based, global or per-type)
Download the latest DexcomOverlay.exe from the Releases page.
It's a self-contained single-file exe — no .NET installation required. Just download and run.
- Windows 10 (build 19041) or later
- A Dexcom Share account with an active CGM session
- Dexcom G6, G7, or ONE connected to the Dexcom mobile app with Share enabled
- Internet connection
- Download
DexcomOverlay.exefrom Releases - Run the exe — a small dark overlay appears in the top-right of your screen
- Right-click the overlay → Settings
- Enter your Dexcom Share credentials (same as your Dexcom mobile app login)
- Select your region (US, Outside US, or Japan)
- Click Save & Reconnect
Your glucose reading will appear within a few seconds.
| Action | How |
|---|---|
| Move the overlay | Click and drag |
| Open settings | Right-click → Settings |
| Open graph | Click the ▤ icon (top-right) or right-click → Graph |
| Alert suppression | Click the ⚠ icon (when visible) or right-click → Alert Suppression... |
| Minimize to taskbar | Click the ─ icon or right-click → Minimize |
| Refresh now | Right-click → Refresh Now |
| Switch mg/dL ↔ mmol/L | Right-click → Toggle mmol/L |
| Logout / clear credentials | Right-click → Logout / Clear Credentials |
| Close | Click ✕ or right-click → Exit |
Settings are stored in %AppData%\DexcomOverlay\config.json and persist across restarts.
| Threshold | Default (mg/dL) |
|---|---|
| Urgent Low | 55 |
| Low | 70 |
| High | 180 |
| Urgent High | 250 |
- .NET 8 SDK (Windows)
dotnet build DexcomOverlay/DexcomOverlay.csproj -c Releasedotnet run --project DexcomOverlay/DexcomOverlay.csprojdotnet publish DexcomOverlay/DexcomOverlay.csproj -c Release -r win-x64 --self-contained true -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -p:EnableCompressionInSingleFile=true -o publishTo have the overlay start automatically when you log in:
- Press
Win + R, typeshell:startup, press Enter - Create a shortcut to
DexcomOverlay.exein that folder
This app uses the Dexcom Share API (the same API the Dexcom Follow app uses) to fetch your glucose readings. It does not use the official Dexcom Developer API, so there's no need for OAuth2 or developer account registration.
- Authenticates with your Dexcom Share/Follow credentials
- Fetches the latest glucose reading every 60 seconds (configurable)
- Caches 24 hours of data to minimize API calls (2-minute TTL)
- Supports US, Outside-US, and Japan Dexcom servers
- Your credentials are stored locally in
%AppData%\DexcomOverlay\config.json - Username and password are encrypted at rest using Windows DPAPI (tied to your Windows user account)
- If you have an existing plain-text config, it will be automatically encrypted on the next save
- No data is sent anywhere except to Dexcom's servers
- No analytics, telemetry, or third-party services
This project is not affiliated with, endorsed by, or connected to Dexcom, Inc. in any way. It is an independent open-source project that uses the Dexcom Share API.
This software is provided for informational purposes only and should not be used as a substitute for professional medical advice. Always consult your healthcare provider for medical decisions. Do not rely solely on this app for glucose monitoring — always use your Dexcom receiver or mobile app as your primary monitoring device.