Skip to content
All guides

Take your scan analytics further

Want to keep your scan numbers, share them or make your own chart? Premium lets you download a report. This guide explains what the file contains and how to open it, even if you have never used a CSV file before.

What is a CSV file?

A CSV file stores information in rows and columns. You can open it in a spreadsheet, an app such as Excel or Google Sheets that displays a grid of cells. CSV stands for “comma-separated values”: commas separate the columns inside the file. You do not need to read or edit those commas yourself.

1. Download your report

  1. With a Premium plan, open Analytics in the app. Choose your dates. You can leave the product and other filters unchanged for a first download, or use them to narrow your report.
  2. Select Apply filters and wait for the report to load. If you also want an earlier total, turn on Compare with the previous period before applying. That option is available only when there is enough earlier history.
  3. Scroll to Data table and download. Use Group table rows by to choose product, country, device or operating-system rows; this updates the table immediately. Select Export CSV. Your browser downloads scan-analytics.csv, usually to your Downloads folder. The file uses this grouping and the filters you last applied. Unapplied filter edits do not change it.

The download fetches the numbers again. New visits may have arrived since the chart loaded, so the file can have newer totals even though the dates and filters are the same.

2. Open it in your spreadsheet app

Use the app’s Import option to open scan-analytics.csv. In Excel, look under Data for From Text/CSV. In Google Sheets, start with File, then Import. Menu names can vary with your language and version.

If asked, choose Comma as the separator (it tells the app where each column starts) and UTF-8 as the file encoding (it keeps accents and other characters readable). The preview should show five separate columns, starting with section.

For a product report, keep gtin and key as Text when importing. GTIN is the product’s barcode number: 09506000134352 must keep its first zero. Text also keeps product identifiers unchanged. If the app offers automatic conversion to numbers or dates, turn it off for these columns. If a zero has disappeared, import the original file again with conversion off.

Microsoft’s illustrated guide to importing text and CSV files

3. Understand the numbers

Imagine one product received 12 scans on the first day and 30 on the next. That makes 42 in total. Here is the daily activity shown as a chart and a simple table. The dates and product in this guide are examples.

Two days of scan activity

Sample data

Two days of sample activity: 12 + 30 = 42 estimated scans

42estimated scans

Move over a point to see its number · Tap to keep a day selected · Keyboard: Tab to the chart, then arrow keys

View chart data
DateDaily scansRunning total
2026-10-201212
2026-10-213042
DayEstimated scans
First day12
Second day30
Total for both days42

Several views of the same activity

The file combines different views in one table. The section column tells you which kind of row you are looking at. These are grouped counts, not a list of individual people or pictures of the charts.

Do not add the summary, daily and breakdown rows together: they describe the same scans in different ways. To make a chart by day, use only daily rows. To compare products, use only the product breakdown rows.

If the download is unavailable

Check that your current plan is Premium and a report has loaded. After changing plans, refresh the page. If the download fails, apply your dates and filters again, then retry. Free and Lite do not include export.

A download uses the same available history as your report. It cannot recover expired data. Counts estimate visits reaching CodePersist, not unique people or purchases; the analytics guide explains what is counted.

Optional: file details

Show what each column means

The file’s column names and section codes stay in English, even when you use CodePersist in French. Here is what they mean.

ColumnMeaning
sectionThe kind of row: summary (total), daily (one day) or breakdown (one group).
keyIdentifies the row: total or previous for a summary; a date for a daily row; a product identifier or category code for a group.
labelThe readable product or category name. Blank for summary and daily rows.
gtinThe product’s barcode number, when the row is a product group. Otherwise blank. Keep this column as Text to preserve initial zeros.
estimated_countThe estimated number of scans. The file uses a decimal point and can contain fractions because counts are estimates.

Dates inside the file use year-month-day, for example 2026-10-20, in UTC (the shared reporting time zone). Counts may have more decimal places than the rounded chart labels. Some text can start with an apostrophe: this prevents a spreadsheet from treating it as a calculation. Use the app’s CSV import so names containing commas or quotation marks stay in one cell.

See the example as it appears inside the CSV file
section,key,label,gtin,estimated_count
summary,total,,,42
summary,previous,,,35
daily,2026-10-20,,,12
daily,2026-10-21,,,30
breakdown,"example-product-id","Cedar desk lamp","09506000134352",42
Understand scan analyticsOpen Analytics