Free tool · Last updated
Export Things 3 to CSV
Things 3 has no CSV export. Your to-dos live in a database file on your Mac called main.sqlite. Drop it here and get a CSV with one row per to-do, plus a JSON file. The conversion runs in your browser, so the file is never uploaded.
Drop main.sqlite or a zip of the Things database here
Up to 64 MB. The file stays on this device.
Nothing is uploaded. How to check that yourself
Moving to another app? You may not need a CSV
These apps import the Things database directly, per their own help pages (checked September 27, 2026).
2Do
Mac only: File, Import, From Things. Brings areas, projects, checklists, tags, dates, reminders and repeats; not headings or the Trash. Source: 2Do’s Things import help.
Done Bear
Settings, Import, Things 3 on the web or desktop takes the same files as this page and writes nothing until you confirm. On iPhone and iPad it takes the
Things Database.aaras is and sends the database to Done Bear to build the preview.On a Mac,
donebear import things --dry-runfinds the database and previews; drop--dry-runto import. Moving from Things 3 to Done Bear maps every field. Done Bear needs an account; this page doesn’t.SingularityApp
On a Mac: File, Import, Import from Things. Its help page doesn’t list which fields carry over. Source: SingularityApp’s Things import help.
Todoist and TickTick don’t import Things. Todoist imports a CSV in its own template, so rearrange this page’s columns first. TickTick’s importer lists Todoist, Microsoft To Do, Wunderlist, OmniFocus, Toodledo and iCal, not Things.
Find the Things database on a Mac
Quit Things, so recent changes are written to main.sqlite.
In Finder, choose Go, Go to Folder (Shift-Command-G) and paste
~/Library/Group Containers/JLMPQHK86H.com.culturedcode.ThingsMac/. The Library folder is hidden.Open the folder whose name starts with
ThingsData-.Control-click
Things Database.thingsdatabaseand choose Show Package Contents.Copy (don’t move)
main.sqliteto your Desktop, or Things loses its list.Drop the copy on the converter, or Compress
Things Database.thingsdatabaseand drop the zip.
If Things is only on your iPhone or iPad
In Things, go to Settings, General, Diagnostics, Enter Code, 491348, Send Things Database. This page can’t open the Things Database.aar it sends: save it to Files, tap it to unpack, and choose the main.sqlite inside. On a Mac, aa extract -i "Things Database.aar" -d ~/Desktop/things unpacks it too.
What the CSV contains
One row per to-do, including completed, canceled and trashed ones. Dates are YYYY-MM-DD, and the file is UTF-8 with a byte-order mark so Excel and Numbers keep accents and emoji. Cells starting with =, +, - or @ get a leading apostrophe so they show as text, not formulas.
| Column | What it holds |
|---|---|
| Title | The title. |
| Status | Open, Completed or Canceled. |
| List | Inbox, Today, This Evening, Upcoming, Anytime, Someday, Logbook, Trash, or Repeating (the template each repeat is copied from). |
| Project | Its project, including to-dos under a heading. |
| Area | Its area, or its project’s area. |
| Heading | The project heading it sits under. |
| Tags | The to-do’s own tags, comma-separated. |
| Notes | Notes, with line breaks kept. |
| Checklist | One item per line: [ ] open, [x] completed, [-] canceled. |
| When | The scheduled date. |
| Deadline | The deadline. |
| Completion date | Day completed or canceled, in your time zone. |
| Repeat | In words, such as Every 2 weeks on Wednesday. Every copy carries it. |
| Created | Day created. |
| Modified | Day last changed. |
| Things ID | For matching rows between exports. |
The JSON file holds the same to-dos with tags and checklist items as lists, plus your projects (with notes, headings and tags), areas and the full tag list.
What the export leaves out
- Reminder times.
- Project and area tags in the CSV (the JSON lists them).
- Future repeats Things hasn’t created yet. The Repeating row holds the rule.
- Weekday detail of monthly repeats (the second Tuesday reads as Every month).
- Anything already emptied from the Trash.
- Changes made after Things last wrote main.sqlite.
Your file stays on your device
The conversion runs in this tab. No request carries your file or its contents, and nothing is stored.
Besides the usual page view, analytics records only that a file was accepted (size rounded to a range), that a conversion finished, which download you chose and any error. Never a title, a note or a file name.
Check it yourself
- Open developer tools: F12 in Chrome, Edge or Firefox, or Option-Command-I on a Mac. In Safari, first turn on Show features for web developers in Settings, Advanced.
- Open the Network tab and clear it.
- Convert your file and download the CSV.
- Apart from the converter’s own code on first load, the only requests are those analytics events.