A strong first dashboard starts with clean data. If headers are consistent and value types are clear, the agent can infer better charts with fewer manual changes.
For this tutorial we will use the dataset retail-analytics.csv , with sales, customers, campaigns, and weather fields for 2024 and 2025.
Reference columns and rows
| year | month | month_number | country | channel | category | product | customer_segment | units_sold | revenue | profit | discount_pct | marketing_spend | website_visits | conversion_rate | avg_order_value | returns | customer_satisfaction | temperature | holiday_season | competitor_price_index |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2024 | January | 1 | USA | Ecommerce | Electronics | Wireless Headphones | Returning | 285 | 25294 | 9797 | 12 | 4733 | 62014 | 3.72 | 88.75 | 11 | 4.5 | 24 | 0 | 96 |
| 2024 | January | 1 | USA | Retail | Home | Kitchen Blender | New | 240 | 18286 | 6650 | 10 | 3155 | 23522 | 2.52 | 76.19 | 9 | 4.2 | 24 | 0 | 98 |
| 2024 | January | 1 | Canada | Ecommerce | Grocery | Organic Snack Box | Loyalty | 392 | 15686 | 5643 | 6 | 2930 | 50252 | 4.62 | 40.02 | 7 | 4.4 | 29 | 0 | 100 |
- `month_number` is used to sort months correctly.
- `holiday_season` should be binary: `0` or `1`.
- `discount_pct`, `conversion_rate`, `customer_satisfaction`, `temperature`, and `competitor_price_index` should be treated as numeric variables.
- `country`, `channel`, `category`, `product`, `customer_segment`, and `month` are categorical.
- Remove columns you do not want to expose.
- Fix dates, numbers, and repeated labels.
- Define a primary column to segment views.