CSV to Dashboard · Your App Cloud
Build a dashboard from your CSV exports
An export is raw rows from another tool. A dashboard also needs named measures, a period behind every total and a data-as-of date. Plan them from your columns, then match the totals with the source.
From raw rows to figures you can check.
Say what each figure means, point out the export's habits, then hold one finished period against the tool that produced the file.
01
Name the questions and measures
Write the three or four questions the dashboard answers, such as weekly revenue after refunds or open tickets by category. For each measure, name the column it uses, how it is counted and which rows it leaves out.
02
Check dates, money and refunds
Attach the CSV as the tool produced it. In the prompt, give the date format and time zone, say whether the amount includes tax and shipping, and describe how a refund shows up in the rows.
03
Match one period with the source
Pick a closed period, such as last month, and compare revenue and order count with the tool's own report. Then describe who signs in to view the dashboard, and try it with a second account.
What each column of the export becomes.
Each row pairs a part of the CSV with its place on the dashboard and a check that confirms the figure. The column names and values are sample data from an imagined order export for a California shop.
| In your export | On your dashboard | What to check |
|---|---|---|
| Column names chosen by another tool, such as Created At, Total or Payment Status | Measures and fields named in your own words, each with a one-line definition | Total may include tax and shipping. Say which parts revenue should count, and ask for that definition to appear on the dashboard. |
| A date or timestamp, such as 09/30/2026 or 2026-10-01T04:30:00Z | The time axis, the period filter and the grouping by day, week or month | Give the format and the time zone. In UTC, an order placed at 9:30 p.m. in California on September 30 is dated October 1 and lands in the wrong month. |
| An amount column, such as $1,250.00 | A summed measure, labeled with its currency | Check that the column sums to the tool's own figure for the same range. A dollar sign or a thousands comma can leave a value stored as text. |
| A status column with values like Paid, Pending, Refunded and Canceled | The filter behind each measure | Write down which statuses count toward revenue. Find out whether a refund changes the original row or adds a new row with a negative amount, and follow one refunded order through. |
| An order ID repeated on several rows, one for each product in the order | A count of distinct orders, and the key that keeps one order from counting twice | Count distinct IDs, not rows. Compare the order count for a single day with the number the tool shows. |
| A channel, category or assignee column | A breakdown chart and a filter | Spellings like Email, email and E-mail turn one bar into three. Say which value each variant belongs to. |
| A report title above the header, or a Total line at the bottom | Nothing, once you point it out in the prompt, because totals come from the data rows | Check that the record count equals the number of data rows in the file and that no total appears twice. |
| The export date and the range you picked in the tool | A data-as-of label and the period the figures cover | An export taken on September 20 covers only part of September. Mark the month as partial so it doesn't read as a drop. |
What the export doesn't explain.
A CSV is plain text: rows of values with no formulas, formats or notes. It won't say whether Total includes tax, which time zone a date without an offset belongs to or how a refund was recorded. Put those answers in the prompt with the upload.
Bring the file untouched
Upload the export as the tool produced it, and note the date range you picked and the day you downloaded it. Opening and re-saving it in a spreadsheet program can rewrite dates and long IDs.
Rows that shouldn't count
Look for test orders, staff purchases and orders placed to try the checkout. Point them out in the prompt by ID or by a value they share, such as a test email address, then check that no measure counts them.
Amounts under the wrong heading
A comma inside a product name that the tool didn't wrap in quotes pushes every later value one column to the right. Open three rows, including one with a comma in a name, and check each amount sits under its own heading. If amounts read like 1.250,00, say so in the prompt.
One file per period
Name each export by the range it covers, such as orders-2026-09-07-to-09-13.csv. When two ranges overlap, ask for rows to be matched on the order ID plus the product line, and compare the record count after each import.
An illustrative starting point
Figures that carry their definitions.
Measures defined in your words, filters from your columns, a data-as-of date and totals you can hold against the tool that produced the export.
Measures you defined
Each figure can sit beside its definition, such as paid orders minus refunds, before tax. Someone wondering what Revenue covers can read it on screen instead of asking you.
Filters from your columns
Date range, channel and category filters come from columns the export already has. Ask for weeks that start on the day your business uses, so weekly totals line up with the source report.
A clear data-as-of date
Ask for the date of the last import next to the figures, along with the range it covers, so nobody mistakes a September 20 import for the whole month.
The rows behind each total
Ask for a way to open the rows behind a number that looks wrong. Those rows may hold customer names and email addresses, so decide who opens them with the access you describe for each collection.
Together in your app cloud
The pieces behind the possibility.
Choose the models and services that support the experience you want to create.
Database
Keep data and context for apps and agents
Authentication
Give the right people access
Email
Keep conversations moving
Language models
Reason, write, and understand
A little more context
Good questions.
How do I add next week's export without counting days twice?
Bring the new file into the same dashboard as a deliberate re-import. Ask for rows to be matched on a key that is unique to each row, such as the ticket ID, or the order ID plus the product line when one order spans several rows. Days that appear in both exports then count once. Afterwards, check that last week's total did not change.
Can the dashboard update itself from the tool that makes the export?
Not from an upload. An upload supplies a snapshot of the rows in the file. Later rows arrive through another import, entries made in the app, or a supported integration if one exists for your tool. Whichever route you pick, match one week against the tool's report and check the data-as-of date afterward.
Why don't my totals match the tool's own report?
Compare one day at a time. Common causes are a time zone that moves late orders into the next day, a refund counted once as a status and again as a negative row, product lines counted as orders, and tax included on one side only. The tool may also report by payment date rather than order date.
Can some people see the totals without the customer rows?
Plan it with the access you describe for each collection. One way is to keep weekly totals in their own collection, apart from the order rows that hold names and email addresses. Then sign in with a second test account and confirm what it can open.
Can the app email a weekly summary?
Apps can send email and run tasks on a schedule you set, such as a Monday message with last week's revenue and order count. The message can only count rows imported so far, so bring in the new export before it runs. Test it, and review the figures before acting on them.
Can a model explain why a figure moved?
Apps can use models, so you can ask for a language model that drafts a note about a change, such as which channel accounts for most of a weekly dip. Treat the note as a draft and check each statement against a figure on the dashboard. Model usage is metered separately.
Which plan does a dashboard built from CSV exports need?
A dashboard that keeps imported rows, takes each new export and asks people to sign in needs a backend, so it is an app with data, and putting it live needs a paid plan. Model and service usage is metered separately, and the pricing page lists what each plan includes.
Explore Pricing for plans, included capabilities, and usage details.
Keep exploring.
Bring business data into one place ↗
See the outcome and the capabilities behind it.
Why CSV exports go stale ↗
How each copy of an export drifts from the tool it came from, and what to use when the numbers have to stay current.
Understand data and context ↗
Give information the right place in your app.
Prepare to publish ↗
Check the experience you will share.
Your ideas, up and running
Your next idea has a home.
Build an app. Run an agent. Make it yours.
Start building