Skip to content
ONLINE·BOOKING Q4 2026 ENGAGEMENTS·ONDINE v1.10.1·--:-- UTC
← all work
ArchitectureAnalyticsCPG / Spirits

Global Brand Performance Dashboard
One measurement system for 73 markets

A world market map, performance charts, and layered data plates arranged on an architecture worktable

A global company cannot compare brands when every country defines sales, distribution, currency, and reporting periods differently. This design creates one governed measurement system, then gives executives, brand teams, and country managers the views they need from the same underlying facts.

73
Countries
€11B
Revenue
5
Shared Fact Tables
$0
2024 Prototype/mo

A dashboard spanning 73 markets needs to distinguish shipments to distributors from sales at the till. Currency conversion and reporting periods need agreed rules too. Otherwise, two countries can report the same metric name while measuring different activity. This design starts with those definitions, before choosing the charts.

The design goal: give executives, brand teams, and country managers one shared measurement system without erasing the local detail each group needs. The model combines common definitions, governed brand and country data, and views built from the same facts. The prototype below illustrates the design; it does not establish a measured improvement in sales or decision speed.
01 · KPI FRAMEWORK

Start by agreeing what “brand performance” means

The model separates three questions: how a brand is performing, what marketing may have contributed, and where distribution is missing. These require different measures. A market-share estimate, a consumer survey and a distributor shipment cannot be treated as interchangeable evidence of demand.

KPI Framework diagram, Brand Performance, Marketing Effectiveness, Commercial & Trade

Is the brand gaining or losing ground?

Each comparison needs the same category, channel coverage and reporting period. The references and providers listed below are starting points for defining the measures, not evidence that their datasets were integrated into the prototype.

MetricDescriptionSource
Volume & Value ShareBrand's sales as % of total marketNielsenIQ, IWSR
Price IndexBrand's avg price relative to category averageCircana, SmashBrand
Numeric Distribution% of stores in a market that carry the brandNielsenIQ, Overproof
Weighted Distribution% of total category sales from stores carrying the brandOverproof
Rate of Sale (ROS)Avg units sold per store per week, sales velocityOverproof
DepletionsVolume leaving distributor warehouses for accounts, not sales to the final consumerOverproof

Did marketing change demand?

MetricDescriptionSource
Awareness (Aided/Unaided)% of surveyed consumers who recognize or recall the brandKantar BrandZ
Consideration & Intent% of aware consumers who would purchaseKantar
Share of Voice (SOV)Brand's share of total advertising impressions in categorySmashBrand, Nielsen
SOV/SOM RatioSOV / Share of Market. Above 1, advertising share exceeds market share; the ratio alone does not predict growth.Nielsen
Media Mix Modeling (MMM)Model-based estimates of channel contribution to sales, subject to data and causal assumptionsGoogle Meridian, Meta Robyn
Incremental VolumeEstimated sales lift attributed by an experiment or econometric modelSmashBrand

Are products reaching the right channels?

MetricDescriptionSource
Net Sales Revenue (NSR)Revenue after returns, allowances, and discountsIndustry standard (spirits & CPG)
Trade Spend EffectivenessROI on promotional and trade-focused investmentsNielsenIQ
On-Trade vs Off-TradeSales split between on-premise (bars) and retailCircana
eCommerce Share% of total sales via online retail channelsCircana
02 · DATA MODEL

Store every view on one shared set of facts

Two views of the same brand and month should resolve to the same sales records. The proposed star schema keeps sales, market share, media spend, brand health and distribution in five fact tables, linked to shared dimensions. Their grains differ: a quarterly survey cannot become a daily observation just because the dashboard has a date filter.

Star schema diagram, 5 fact tables and 5 dimension tables for brand analytics

Shared definitions: brands, markets, dates, and channels

DimensionKey AttributesSCD Type
dim_brandbrand_name, sub_brand, category, segment, portfolioType 2
dim_geographycountry, region, sub_region, city, channelType 1
dim_timefull_date, year, quarter, month, week, day_of_weekN/A
dim_channelchannel_name, channel_type (On-Trade, Off-Trade, eComm)Type 1
dim_mediamedia_channel, sub_channel, campaign_name, creative_nameType 2

Measurable events: sales, distribution, media, and brand health

Fact TableKey MetricsGranularity
fact_market_sharevolume_share, value_shareBrand x Geo x Month
fact_salessell_in_volume, sell_out_volume, net_sales_revenueBrand x Geo x Channel x Day
fact_media_spendspend_amount, impressions, clicks, GRPsBrand x Geo x Media x Day
fact_brand_healthawareness_pct, consideration_pct, trial_pctBrand x Geo x Quarter
fact_distributionnumeric_distribution, weighted_distribution, rate_of_saleBrand x Geo x Month
Keep historical reports historically correct. A Type 2 Slowly Changing Dimension stores a new dated version when a tracked brand attribute changes. Facts must reference the version valid for their date. That join preserves last year's portfolio hierarchy; storing the versions without using them in the fact keys would not.

Separate raw evidence from cleaned and reportable data

The pipeline separates three stages. Bronze retains source data as received. Silver applies currency rules, removes duplicates and maps names such as “Absolut” and “ABSOLUT VODKA” to a governed brand identifier. Gold publishes the shared facts and dimensions. Retaining the intermediate data gives an analyst somewhere to check whether a disputed value changed during ingestion, cleaning or aggregation.

Medallion Architecture, Bronze, Silver, Gold layers feeding into BI dashboard
03 · DATASETS

Use public data to test the model, not to stand in for 73 markets

The datasets below offer different test cases: liquor purchases, shopping baskets, media spend and exchange rates. They can exercise parts of the model before company data is available. They do not form a matched global panel, and a chart built from them cannot validate the private company's market share or campaign impact. Access conditions and licences need checking with each publisher.

DatasetUse CaseAccess
Iowa Liquor SalesLicensed retailers’ liquor purchases; brand, category and geographic analysisdata.iowa.gov
dunnhumby: The Complete JourneyHousehold purchases for trial, repeat and loyalty analysisPublisher or dataset mirror; check terms
Instacart Market BasketProduct associations within online grocery ordersKaggle; check dataset licence
Advertising & Sales DatasetIllustrative spend/sales relationships, not proof of incremental impactExact dataset and licence still to identify
Google TrendsRelative search interest, not a brand-awareness surveyGoogle Trends exports
World Bank Open DataGDP, population, inflation and country contextWorld Bank data portal
ECB Exchange RatesCurrency conversion and constant-currency analysisECB data portal
04 · DESIGN

Change the view without changing the calculation

The executive view summarizes global performance. A brand director compares markets; a country manager needs product-level detail. These are separate views of shared calculations, not separate definitions of sales. The layouts below are design choices for those tasks, not measured usability results.

Executive Cockpit

A one-page summary with at most six headline metrics in this design. Red, amber and green status flags need agreed thresholds.

Brand Scorecard

Mix of financial, market share, and brand health metrics per brand. Structured comparison vs. prior period and vs. plan.

Country Comparison

Small multiples put one chart per country in a grid. Matching axes and periods keep the comparisons interpretable.

KPI Driver Tree

Break down changes in NSR into volume, price and mix contributions. This explains the calculation; it does not establish what caused demand to change.

IBCS Standards

Use consistent visual conventions for actuals and budget across reports. The same bar style should not mean actuals in one market and plan in another.

Storytelling with Data

Show the comparison period and highlight the relevant change. Keep any recommendation separate from the observation it rests on.

05 · ARCHITECTURE

Centralize the rules without centralizing every delivery team

The scope covers 73 countries, more than 15 currencies and several source formats. The proposed split gives country teams responsibility for their data, with common contracts for brand identity, conversion rules, periods and publication checks. It depends on those teams having the capacity to support what they publish; assigning an owner on a diagram is not enough.

Federated ownership
Country teams publish and support their datasets against common contracts. The Data Mesh label matters less here than a named owner for a late feed or a changed field definition.
Sources: AWS, Google Cloud
One governed brand and product catalogue
Master Data Management (MDM) maintains shared identifiers for brands, geography and products. Local spellings such as “Absolut Vodka” must map to that catalogue before their sales can be combined.
Sources: Crisp
Data Harmonization
Apply agreed currency, unit and period rules before aggregating markets. Keep the conversion rule explicit so a change in exchange rates is not mistaken for a change in sales volume.
Sources: Teradata
Cloud Data Platforms
Databricks or Snowflake are platform candidates; dbt is an option for transformation logic. This data model does not require all three, and the prototype below uses Python and DuckDB.
Sources: Databricks, Snowflake, dbt Labs
Real-Time Streaming
Kafka or Confluent could carry sales and inventory events when a decision needs fresher data than the batch schedule provides. Streaming is an option to justify by that requirement, not a prerequisite for this dashboard.
Sources: Confluent
06 · AWS DEMO

Test country filters and brand views on a small stack

The 2024 prototype let a stakeholder filter by country and inspect a brand without first funding a production platform. The stack below was reported to fit within the free-tier allowances available then. This page does not include a billing record, a load test or evidence that the prototype ran the full 73-market workload.

AWS demo architecture, S3, DuckDB, Streamlit on EC2 t2.micro
ComponentTechnology2024 cost basis
Data StorageAmazon S3 (Parquet files)Free Tier (5GB)
Processing & AnalyticsPython + DuckDB, queries Parquet directly from S3$0
DashboardStreamlit, interactive Python web app$0 (self-hosted)
OrchestrationLinux cron job, periodic data refresh$0
HostingEC2 t2.microFree Tier (750h/mo)
Reported prototype cost in 2024: $0 per month within the applicable AWS Free Tier. That is not a current hosting quote. Eligibility depends on the account, services and usage; the design does not depend on a particular free-tier instance.

Options if the prototype’s requirements change

Evidence.dev

A candidate for SQL-and-Markdown reports when maintaining a Python dashboard is not part of the team’s remit.

Apache Superset

A candidate for self-hosted BI when analysts need to explore data beyond the views defined in the prototype.

Dagster / Prefect

Revisit orchestration when dependencies, retries and backfills become hard to manage with cron. The number of steps alone is not a reason to switch.

07 · REFERENCES

Methods and source entry points

  1. NielsenIQ. Market Measurement. nielseniq.com
  2. Circana. Consumer Insights for the Alcohol Industry. circana.com
  3. Overproof. 15+ KPIs Alcohol Brands Should Track. (Oct 2024)
  4. Kantar. BrandZ Brand Valuation Methodology. kantar.com
  5. Kimball Group. Type 2: Add New Row. Type 2 dimension history
  6. Databricks. Medallion Lakehouse Architecture. Bronze, Silver and Gold layers
  7. Google Meridian. Media Mix Modeling. developers.google.com
  8. Meta Robyn. Open-Source MMM. facebookexperimental.github.io
  9. State of Iowa. Iowa Liquor Sales Open Dataset. data.iowa.gov
  10. AWS. EC2 Free Tier usage and eligibility. Account-date and usage conditions
  11. DuckDB. Parquet Import. duckdb.org
  12. Streamlit. Create an App. docs.streamlit.io