Your app stores real information: sign-ups, orders, posts, bookings, uploaded files. Sooner or later you will want to check what is actually in there, confirm that a feature saved what it should, or take the data somewhere else, such as a spreadsheet for reporting or a backup on your own computer. App data lets you do all of this from Caffeine, without asking the AI or writing any code.
App data shows the information your app stores as tables you can browse, and lets you download it as CSV files that open in Excel, Google Sheets, Numbers, or any other spreadsheet tool.
How to open App data
Open project settings by clicking the gear icon in the chat header, then select App data from the settings sections.
Use the Draft and Live switch at the top to choose which version's data you are looking at. Live is available once your app has been published, and Draft is available while your draft is running. Draft data is temporary, so use Live when you want your real users' data.
Only the owner of the app can view and export its data.
What you see
Each tab is a table of data your app stores, and each row is one record. For example, a booking app might have one table for customers and another for bookings.
- Pages — large tables are split into pages. Use the page controls to move through them and Rows per page to show more or fewer records at once.
- Refresh — reloads the table so you see the latest records.
- Files and images — when a record contains an uploaded file, you can preview images and download the file directly from the row.
-
Access label — each table shows who can read its data in your app:
- Public — anyone can read all rows.
- Scoped per user — each user sees only their own rows.
- App creator only — only you, the app creator, can read this data.
- App creator or scoped — you see all rows, and each user sees only their own.
App data is for viewing and exporting. You cannot edit or delete individual records here. To change how your app stores or handles data, ask the AI in the project chat.
Exporting your data
You can download a table's data as CSV files:
- Export all downloads every table in your app. You get a ZIP file containing one CSV file per table, named after the table.
- Export selection downloads only the rows you choose. Tick the boxes next to the rows you want (or the box at the top to select every row on the page), then click Export selection. The button shows how many rows are selected.
After you start an export, a progress window shows how many rows have been processed. Larger exports can take a while. You can close the window and a full export keeps running in the background, or click Cancel export to stop it.
When the export is ready, click Download to save the ZIP file.
- A full export (Export all) stays available to download for 24 hours after it finishes. After that the link expires and you need to start a new export. If you cancel a new export while an earlier one has not expired, App data still offers the earlier one for download.
- An export of selected rows can be downloaded only from its progress window. Download it before you close the window. To get it again later, select the rows and export them again.
What the CSV files contain
Each CSV file has one column per field and one row per record, the same records App data shows you. Uploaded files appear as a link to the file rather than the file itself. Fields that hold a list or a group of values appear as text in a single cell.
Limitations
- Views that require query parameters are not supported. App data shows: This view requires query parameters and is not supported in the data explorer.
- If App data shows "Can't load data — this canister was not built with data query support enabled", your app's backend does not support browsing its data, so App data cannot show or export it.
- If your app has not been deployed yet, there is nothing to show. Build your app first, then come back to App data.
Frequently asked questions
Can I export my app's data to a spreadsheet?
Yes. Open project settings (gear icon in the chat header), go to App data, and click Export all to download every table, or select rows and click Export selection. You get CSV files, which open in Excel, Google Sheets, Numbers, and most other spreadsheet tools.
Why is my export a ZIP file?
An export can contain more than one table, and each table becomes its own CSV file. The ZIP keeps them together in a single download. Open the ZIP to get the individual CSV files.
How long does my download stay available?
A full export (Export all) stays available for 24 hours from when it finishes. After that the link expires and you need to start a new export. An export of selected rows can be downloaded only until you close its progress window.
Do I have to keep the window open while the export runs?
Not for a full export. You can close the progress window and it keeps running in the background. Come back to App data and click Export all to see its progress and download it when it is ready. For an export of selected rows, keep the window open until you have downloaded the file.
Why does a table show no records?
If a table is labelled Scoped per user, each row belongs to the user who created it, so App data does not show those rows. If the table has another label, your app may not have stored any records in it yet. Check that you are looking at the right version with the Draft and Live switch, and click Refresh.
Are uploaded images and files included in the export?
The CSV files include a link to each uploaded file, not the file itself. To download a single file, use the download button on its row in App data.
Can I export my app's analytics?
No. The export in App data covers the data your app stores, such as users, records, and uploads. Visitor analytics can only be viewed in project settings → Analytics. See What Does App Analytics Show?.
Can I edit records in App data?
No. App data is for viewing and exporting only. To change your app's data, use your app itself, or ask the AI in the project chat to add the editing feature you need.