Why import via CSV?
If you have been tracking your weight, medication, or sleep data in another app or a spreadsheet, you do not have to start from scratch. DayByDay accepts CSV files for all major data types so you can bring your history with you.
CSV import is a web-only feature
Upload your files by logging in at <strong>web.mydaybyday.app</strong> from a browser. Navigate to the relevant section (Weight, GLP-1, or Sleep), then tap the <strong>Import CSV</strong> button.
How to upload
- 1Log in at web.mydaybyday.app in your browser.
- 2Go to the section you want to import (Weight, GLP-1, or Sleep).
- 3Tap the Import CSV button near the top of the page.
- 4Select your CSV file from your computer.
- 5DayByDay will preview the data it found. Review the rows for any issues.
- 6Tap Confirm import to save the data to your account.
Weight CSV format
Your weight CSV needs at minimum a date and a weight column. Body fat percentage is optional.
| Column | Required? | Notes |
|---|---|---|
| Date | Yes | See accepted formats below |
| Weight | Yes | In lbs or kg β must match your app unit setting |
| Body Fat % | No | Decimal number, e.g. 28.5 (not 28.5%) |
Accepted date formats
- β¦
YYYY-MM-DDβ e.g. 2024-01-15 (recommended) - β¦
MM/DD/YYYYβ e.g. 01/15/2024 - β¦
DD/MM/YYYYβ e.g. 15/01/2024 - β¦Long-form date β e.g. January 15, 2024
Weight units
Your CSV values should match the unit you have set in the app. If your app is set to lbs, your CSV should use lbs. If you need to change your unit setting first, go to Settings β Profile β Preferred units.
Important notes for weight imports
- β¦Duplicate dates are skipped automatically β the existing entry is kept.
- β¦Entries you have logged manually in DayByDay take priority over imported rows for the same date.
- β¦The import preview will flag any rows it cannot parse so you can fix them before confirming.
Example weight CSV
Date,Weight,Body Fat % 2024-01-01,212.5,34.2 2024-01-02,211.8, 2024-01-03,213.0,34.0
GLP-1 dose CSV format
DayByDay accepts three different levels of detail for GLP-1 dose imports. Use whichever format matches the data you have.
Format A β Simple
| Column | Required? | Notes |
|---|---|---|
| Date | Yes | Date of injection |
| Dose (mg) | Yes | Numeric dose in milligrams, e.g. 0.5 or 2.5 |
Format B β With time
| Column | Required? | Notes |
|---|---|---|
| Date | Yes | Date of injection |
| Time | Yes | 24-hour or 12-hour format, e.g. 09:00 or 9:00 AM |
| Dose (mg) | Yes | Numeric dose in milligrams |
Format C β Full detail
| Column | Required? | Notes |
|---|---|---|
| Date | Yes | Date of injection |
| Medication | No | e.g. Ozempic, Mounjaro, Wegovy, Saxenda, Zepbound |
| Dose (mg) | Yes | Numeric dose in milligrams |
| Injection Site | No | e.g. Left abdomen, Right thigh, Left arm |
| Notes | No | Free text, e.g. side effects or other observations |
Which format should I use?
Start with Format A if you just have a list of dates and doses. You can always add more detail later by editing individual entries in the app.
Sleep CSV format
Sleep data is the most detailed import. Only the date is required β include as many optional columns as your source provides.
| Column | Required? | Notes |
|---|---|---|
| Date | Yes | The date the sleep session ended (morning date) |
| Total Sleep Minutes | No | Total minutes of sleep recorded |
| Avg SpO2 | No | Average blood oxygen percentage, e.g. 96.2 |
| Lowest SpO2 | No | Lowest blood oxygen reading of the night |
| Drops/hr | No | Oxygen dips per hour (drops of 3% or more) |
| O2 Score | No | Overall oxygen quality score (0β100) |
| Time Awake Minutes | No | Minutes spent awake after initially falling asleep |
| Time REM Minutes | No | Minutes in REM sleep |
| Time Core Minutes | No | Minutes in core (light) sleep |
| Time Deep Minutes | No | Minutes in deep sleep |
| Avg Heart Rate | No | Average heart rate during sleep (bpm) |
| Notes | No | Free text notes about the night |
This format is designed to be compatible with O2 Ring exports from the ViHealth app. If you are exporting from a different source, match your column names as closely as possible β DayByDay does fuzzy column matching to handle minor naming differences.
Troubleshooting import problems
Wrong date format
If the preview shows dates as errors, your date format may not be recognized. Try changing your column to YYYY-MM-DD format in your spreadsheet app. In Excel or Google Sheets, format the column as Text first, then type the date manually.
Weight is in the wrong units
If your numbers look wildly off after import, check that your CSV weight values match your app unit setting. A weight of 96 lbs when you weigh 96 kg would import as 96 lbs (very underweight). Change your unit setting before importing, or convert your spreadsheet values first.
File too large
CSV files up to 10 MB are accepted, which covers several years of daily entries. If your file is larger, try splitting it into multiple files and importing them one at a time.
Headers not recognized
Make sure your CSV file has a header row as the very first row. DayByDay uses column names to map data, so the first row must contain labels like Date, Weight, etc. If your export from another app uses different column names, you can rename them in a spreadsheet before importing.
Need help formatting your file?
If you are having trouble getting your data into the right format, contact support from Settings β Support β Contact us and attach your CSV file. We can help you reformat it.