Skip to main content
Exepad

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.

Plan: Build and preview it on any plan; on Free, AI in previews is free up to $1 a month. Putting it live needs Go or Pro. See pricing

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.

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 exportOn your dashboardWhat to check
Column names chosen by another tool, such as Created At, Total or Payment StatusMeasures and fields named in your own words, each with a one-line definitionTotal 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:00ZThe time axis, the period filter and the grouping by day, week or monthGive 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.00A summed measure, labeled with its currencyCheck 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 CanceledThe filter behind each measureWrite 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 orderA count of distinct orders, and the key that keeps one order from counting twiceCount distinct IDs, not rows. Compare the order count for a single day with the number the tool shows.
A channel, category or assignee columnA breakdown chart and a filterSpellings 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 bottomNothing, once you point it out in the prompt, because totals come from the data rowsCheck 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 toolA data-as-of label and the period the figures coverAn 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.

Together in your app cloud

The pieces behind the possibility.

Choose the models and services that support the experience you want to create.

Explore every building block

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.

Your ideas, up and running

Your next idea has a home.

Build an app. Run an agent. Make it yours.

Start building