An analytics dashboard exists to answer a repeating question: what moved, why, and is it still moving. That makes it different from an admin dashboard, which exists so people can change records. One is for understanding, the other for acting, and they need different things from the software underneath.
This guide covers the analytics kind, built by description rather than by hand. Ten steps, with the prompts. Two of them — defining your metrics and verifying the numbers — matter more than the other eight combined, and they're the two most guides skip.
What You'll Need Before You Start
- Access to your data, with working credentials. Not an export — the live source.
- A list of candidate metrics, longer than what you'll keep.
- The audience, named. "The leadership team" is not specific enough to design for.
- A refresh cadence. Daily, weekly, live. This decides more architecture than anything else on the list.
Step 1: Name the Decision, Not the Topic
Start with the decision the dashboard should make faster, in one sentence.
"A marketing dashboard" is a topic. "Whether to shift next month's budget between channels" is a decision. The second tells you which metrics belong, which comparisons matter, and when the dashboard is finished. The first produces a wall of charts nobody acts on.
Write the sentence down. If you can't, that's useful information — build something else first.
Step 2: Choose Your Metrics, Then Cut Half
Most guides say 8–10 metrics maximum. That's a reasonable ceiling and still too many for a first version.
The test for each candidate: if this number moved 20% next week, would anyone do something differently? If not, it doesn't belong. Pageviews on a revenue dashboard, follower counts on a product dashboard — these feel informative and change no decisions.
Keep five for the first build. Adding a metric later takes a sentence; removing one after people have grown attached takes a meeting.
Step 3: Define Each Metric Precisely
This is the step that determines whether anyone trusts the dashboard in six months, and it's almost always skipped because it feels like paperwork rather than progress.
Every metric has ambiguity in it. Write down which side of each you're choosing:
When two teams pull the same KPI from different logic, you get two numbers in the same meeting and the dashboard loses the room. No tool prevents this. The definitions you write here are also the most portable thing you produce — they survive even if you rebuild the dashboard somewhere else entirely.
Step 4: Connect Your Data Sources
Point the build at your live source rather than a file, so the numbers stay current without anyone re-uploading anything.
- A Postgres database — connect via Supabase, which handles schema access and credential storage.
- A spreadsheet-shaped base — Airtable works well when your records already live there.
- Billing and subscription data — Stripe, rather than maintaining a copy of payment records.
- Anything else — check the available integrations for your source before assuming custom API work.
One caution: analytics queries aggregate across a lot of rows. If you're connecting to a production database, ask for a read replica or a scheduled sync rather than pointing dashboard queries at the same database serving your application.
Step 5: Write the Build Prompt
Describe the outcome, the audience, and the definitions together. A prompt with this shape gives an ai dashboard builder enough to work with:
Build an analytics dashboard for the leadership team of a subscription business, reviewed weekly.
Five metrics: monthly recurring revenue net of refunds, booked at payment date, split by plan tier. New customers per month. Monthly churn rate, counted at period end, where a downgrade does not count as churn. Average revenue per account. Failed payments in the last 30 days.
Each metric shows the current period, the change against the prior period, and a 12-month trend. Include a date-range filter and a plan-tier filter that apply to every chart on the page.
Show the last-updated timestamp at the top of the page.
Data comes from a Postgres database. Connection details to follow.
The parts doing the work: explicit definitions rather than metric names, a stated comparison basis, filters specified as global, and the timestamp. That last one prevents someone reading three-week-old numbers as current, which is the most common way an analytics dashboard misleads people.
Step 6: Verify the Numbers Before You Trust the Charts
Do this before you look at the design. It's the step that separates a dashboard from a decoration.
Pick two metrics and check them by hand against your source — a SQL query, a spreadsheet sum, last month's finance report. Then check three specific things:
- Boundaries. Does the month start where your finance team says it does? What timezone?
- Exclusions. Are test accounts, internal users, and cancelled-then-reinstated customers handled the way you intended?
- Nulls. A missing revenue value is not zero. Confirm which it became.
If a number is off, fix the definition rather than the chart. A chart matching a wrong definition is worse than an obviously broken one, because nobody catches it.
Step 7: Choose the Right Chart for Each Metric
Ask for specific chart types rather than leaving it open. The mapping is fairly settled:
Two things to avoid: dual-axis charts, which invite false conclusions about correlation, and any chart where the reader has to compare angles or areas rather than lengths.
Step 8: Lay It Out for Someone Who Won't Read It
Assume thirty seconds of attention on a phone.
- Most important metric top-left. Reading order is real; use it.
- Group related metrics. Revenue together, retention together, not interleaved.
- Context beside every number. A figure with no target or prior-period comparison can't be interpreted.
- One screen for the summary. Detail goes below or behind a filter, not stacked in.
- Consistent colour meaning. If green means growth in one chart, it can't mean a plan tier in another.
A reader who only sees the top of the page should still come away with the right impression. If they wouldn't, the layout is wrong regardless of how good the charts are.
Step 9: Add Summaries and Natural-Language Search
This is where a generated dashboard does something a traditional build won't without a separate project.
Because Emergent includes a Universal LLM Key, your application can call GPT, Claude, and Gemini models through your existing credits — no separate API account, no second bill. Which means model-driven features go in the same description as the charts:
- A written weekly summary, generated on load: what moved, by how much, and against what.
- Plain-language search over your own records — someone asks which enterprise accounts churned after a failed payment, without writing a query.
- Anomaly flags on values outside their normal range, with an explanation attached rather than just a highlight.
- Categorisation of free-text fields — cancellation reasons, support tickets — into something countable.
Two rules. Ask the model to cite the figures it used in any summary, so a reader can check it. And keep the model out of the metric calculations themselves: the numbers should come from your defined logic, with the model describing them rather than deriving them. [VERIFY — confirm current model lineup and version naming against Help Articles]
Step 10: Set Refresh, Permissions, and Deploy
Refresh. Match the cadence you decided in the prerequisites. Scheduled is cheaper and fine for weekly review; live streaming is for operational monitoring. Whichever you pick, alert someone when a sync fails — silent staleness is the failure mode that actually causes damage.
Permissions. Decide who sees what, including row-level scope if regional or account-owner views matter. Built-in authentication and role-based access come with the application, but you have to specify the roles. Test with a real second account.
Deploy. Preview links expire quickly by design, so deploy anything a colleague needs to open. Deployment, custom domains, and GitHub sync sit on the paid tiers — check plans and pricing before promising a team access. [HUMAN INPUT REQUIRED — pricing and per-deployment credit cost; reconcile the tier figures currently live first]
What Breaks and How to Fix It
Connectors fail silently. A credential expires, a schema changes, and the dashboard serves the last successful pull. The visible timestamp from step 5 is the cheapest possible defence.
Definitions drift. Someone adds a chart with slightly different logic and now two numbers disagree. Keep the definitions from step 3 written down somewhere other than the dashboard.
Metrics accumulate. Every request adds one and nobody removes any. Review quarterly and cut what nobody references.
Nobody owns it. An analytics dashboard without a named owner degrades in about two months. Someone has to notice the broken connector.
The dashboard replaces the analysis. Charts show what moved. Understanding why still takes a person, and a dashboard that makes people feel informed without being informed is a real risk.
When a BI Platform Is the Better Choice
Three cases where you should buy rather than build.
You need statistical depth. Cohort analysis, forecasting, attribution modeling. An established BI platform with a modeled warehouse behind it wins here, and not narrowly.
You already have a warehouse and an analytics team. They have a tool, they know it, and a second system fragments your metric definitions.
Several departments need one governed set of metrics. That's what a semantic layer is for, and it's a different category of product.
Building your own makes sense when the requirement is specific, the audience is defined, and what you need is a dashboard that exists this week rather than a platform.

Most AI app builders stop at prototypes. Emergent creates production-ready apps you can actually launch.
- Production-ready apps
- Web & mobile apps
- Deploy in minutes



