KDIQ · Data to Decisions. · IMFL · Beer · 8 States · Daily MIS
calendar_todayMTDapartment
notifications
personExecutive
Management Intelligence
System status: Optimal · Group-wide daily MIS · IMFL & Beer · 8 states
Owner Scorecard
paymentsSales Value — MTD (Gross)
Not yet populated
fact_sales.value_inr unpopulated (R-F43) — gross sales value, not net of COGS/freight/discount
track_changesVolume vs Target
—
fact_target has no rows yet
local_shippingTN Depots Dispatched Today
—
of live TN depot universe (denominator not yet resolvable)
inventory_2Stock / Coverage Risk
—
Days-of-cover formula not built yet — R-F62 flagged the underlying depletion arithmetic as unreliable at fine grain. Real, live risk signals: Silent Outlets and Brand Distribution Gaps, below.
reportMIS Exceptions
—
Rows flagged for review today
Profitability
query_stats
Not Currently Calculable
Data gap, not a bug
Contribution, Margin %, a Profit Bridge, and ₹-denominated Leakage / Recoverable Opportunity
cannot be computed today — the underlying cost and deduction data was never captured in the
schema. Showing a number here would mean fabricating it. What follows instead is exactly what's
missing, so the gap is visible and actionable rather than silently absent.
factoryProduct Cost (COGS)
No cost column on dim_sku or any fact table — only base_price (list) and excise_duty (reference rate) exist.
local_shippingFreight Allocation
No freight/logistics cost field on fact_sales, fact_depot_invoice, or any dispatch table.
sellScheme / Discount Data
No discount, rebate, credit-note, or returns table exists — sales value is captured gross only.
Needs Attention
Growth DriverAttentionForecast
more_horiz
A validated stockout-risk (days-of-cover) signal isn't built yet.
R-F62 found the dispatch-vs-closing-balance arithmetic this would need unreliable at outlet×SKU grain, so it wasn't shipped as a number — see Stock / Coverage Risk above. Two real, live signals are available today instead: Silent Outlets (known outlets missing from the latest load) and Brand Distribution Gaps (reporting outlets with no stock row for a given brand) — both volume-based signals, shown in Distribution & Stock Health directly below.
Distribution & Stock Health
local_shippingOutlet Reporting Coverage by District — Tamil Nadu
Known outlets that reported closing balance · —
warningStockout Risk — Priority Depots
Days-of-cover feature not built yet — see note below
Depot
State
SKU
Cover
Status
storeTamil Nadu — Outlet Closing Balance
TASMAC per-shop stock · new source (R-F59) · —
District
Outlets
Closing Bottles
Closing Cases
Closing Litres
Loading…
insightsTamil Nadu — Kals Brand Outlet Reach
Top / bottom Kals brands by % of TN outlets carrying stock · —
Brand
Outlets
Reach %
Closing Bottles
Loading…
local_shippingTamil Nadu — Depot → RV Dispatch
Total: — · Top depots by dispatch value · —
Depot
Outlets
Cases
Value (₹)
Loading…
sports_barTamil Nadu — IMFL Outlet Reach
Brandy, Rum, Whisky (all non-Beer) · outlets with stock, of RV universe · —
—
Loading…
sports_barTamil Nadu — Beer Outlet Reach
Outlets with Beer stock, of RV universe · —
—
Loading…
volume_offTamil Nadu — Silent Outlets
Known outlets missing from the latest closing-balance load · —
District
Silent Outlets
Known Outlets
Silent %
Loading…
production_quantity_limitsTamil Nadu — Brand Distribution Gaps
Reporting outlets with no stock row at all for this brand · —
Brand
Gap Outlets
Reporting Outlets
Gap %
Loading…
Sales Performance
bar_chartState-wise Sales vs Target — MTD
₹ Crores · Current month
trending_up30-Day Sales Trend
Daily litres (IMFL + Beer)
No data — fact_sales has 3 rows total, none with a usable qty_litres value yet.
donut_largeBrand Mix — MTD Volume
Share by product category
Tamil Nadu — Strategic Snapshot
storeOutlet Reporting
—
Loading…
mapTop-5 District Concentration
—
Loading…
trending_upDeepest Kals Brand
—
Loading…
trending_downThinnest Kals Brand
—
Loading…
donut_largeCategory Split
—
Loading…
hubObserved Competitor Presence
—
Loading…
linkOutlet Join Coverage
—
Loading…
Category Split shows today's mix only (backfilled 2026-08-11, R-F59) — it is not yet a
"Category Mix Shift" since that needs a second day of history to compute a delta.
Stock Coverage Index and any sell-through/depletion metric (from the original 3-tier
design) are deliberately not shown — validated 2026-08-11 via LLM council recommendation:
a depletion diagnostic (stock_t0 + dispatched − stock_t1) on 08-04→08-10 data returned
17.7% negative values (8,735 of 49,364 outlet×SKU pairs), meaning the dispatch data's
partial depot coverage makes the formula unreliable — not built. Observed
Competitor Presence is renamed from "Kals vs Competitor Share" per the same
council review — one confirmed competitor (GOLDEN VATS), one product, present in only 2
of 3 loaded dispatch dates. Shown as raw counts, not a % share, since a % implies
market-representativeness this data doesn't have. See
docs/design/tn-closing-balance-3tier-bi-strategy.md §6.
Tamil Nadu — Outlet Coverage Explorer
travel_exploreWhich RVs (outlets) have this SKU vs. don't
Picked per SKU (pack size), not just brand — a brand's 180ml and 750ml pack can have very
different coverage. Price band (ordinary/medium/premium/super premium) shown where known —
it's only recorded in the Depot→RV dispatch source, not the closing-balance source, so a
SKU that's never been dispatched shows "—". —
—
Outlets with stock (cases in stock)
—
Outlets with no row for this SKU, of today's reporting outlets
We don't get direct sales/POS data from TASMAC outlets — this derives it from two closing-balance
snapshots plus everything dispatched to outlets in between. Requires depot dispatch coverage to be
complete for the whole range, or the result understates sales (looks like negative "sales").
Opening CB date (from)
Closing CB date (to)
Group by
Group
Opening (bottles)
Dispatched (case-equiv. bottles)
Closing (bottles)
Implied Sales (bottles)
Pick a date range and click Compute.
Tamil Nadu — Depot / SKU Drill-Down
warehouseAvailable / Unavailable Outlets & Dispatch, by Depot
Per-brand breakdown for one depot at a time: how many of its outlets have the brand vs. don't,
and how much was dispatched to that depot's outlets in the latest window. Outlet→depot mapping
is derived from dispatch records (no depot dimension link on the closing-balance side) — outlets
that never appear in a dispatch record can't be attributed to a depot here.
Category
Depot
SKU (Brand — Pack)
Price Band
Available Outlets
Unavailable Outlets
Dispatched Cases
Dispatched Bottle-Equiv.
Pick a depot.
Tamil Nadu — Product Performance & Availability
Movement figures are RV dispatch (fact_depot_invoice), not POS sales —
TASMAC gives no sell-through feed, so dispatch is the closest available proxy.
Every distinct depot_key value is one independent depot
(business-owner correction, 2026-08-16): "Ambattur I", "Ambattur II" and "Ambattur III" are three
separate depots, not one depot with three shops under it — the same holds for
Thirumazhisai I/II/III and Coimbatore (N)/(S). There is no parent-depot grouping above these
values and none is inferred. These depots are the RV/outlet-level dispatch points, so "depot" and
"outlet" refer to the same row here. The source holds 47 distinct depot_key spellings
for 43 real depots (owner-confirmed) — 4 depots were each recorded under two
spellings on strictly disjoint dates, and only those 4 confirmed pairs are folded together;
every other value is passed through byte-for-byte.
Closing stock (fact_stock) has depot_key NULL on every TN row, so
days-of-cover and stockout risk are market-level only and cannot be attributed
to a depot.
Headline
local_shippingDispatch — Window Total
—
Loading…
donut_largeCategory Leader
—
Loading…
inventoryDays of Cover — TN Overall
—
Loading…
warehouseDepots Dispatched
—
Loading…
ruleNeeds Classification
—
Loading…
pie_chartCategory Split — IMFL vs Beer
Dispatch cases (donut) · value in the caption below · —
Loading…
warehouseAll Depots — Dispatch
Flat list — one row per distinct depot_key, no grouping ·
Depot
Cases
Value ₹
SKUs
Loading…
Product Mix — IMFL and Beer, side by side
liquorIMFL — Sub-Category & SKU Mix
Brandy / Whisky / Rum / Vodka / Gin share of IMFL dispatch cases, then the SKU mix inside IMFL
SKU mix — top 12 IMFL SKUs by share of IMFL cases
sports_barBeer — Sub-Category & SKU Mix
Strong / Lager / Mild share of Beer dispatch cases, then the SKU mix inside Beer
SKU mix — top 12 Beer SKUs by share of Beer cases
insightsIMFL — Brand Concentration (Pareto)
IMFL dispatch cases per brand (bars) with cumulative % of IMFL total (line)
Loading…
insightsBeer — Brand Concentration (Pareto)
Beer dispatch cases per brand (bars) with cumulative % of Beer total (line)
Loading…
trending_upIMFL — Brand Leaderboard
Top 10 / bottom 10 IMFL brands by dispatch cases · % is share of IMFL cases
Brand
Cases
Value ₹
% of IMFL
Loading…
trending_upBeer — Brand Leaderboard
Top 10 / bottom 10 Beer brands by dispatch cases · % is share of Beer cases
Brand
Cases
Value ₹
% of Beer
Loading…
barcodeIMFL — SKU Leaderboard
Top 10 / bottom 10 IMFL SKUs (brand × pack size)
SKU
Sub-Category
Cases
Value ₹
Loading…
barcodeBeer — SKU Leaderboard
Top 10 / bottom 10 Beer SKUs (brand × pack size)
SKU
Sub-Category
Cases
Value ₹
Loading…
Days of cover and stockout risk are market-level.fact_stock carries no
depot or outlet key for Tamil Nadu (depot_key is NULL on every row), so closing stock
cannot be attributed to a depot or an outlet. The two tiles below are therefore honest TN-wide
figures per brand and per SKU. For "which outlet is likely dry", see the clearly-labelled
dispatch-gap proxy tile further down — it is a movement signal, not stock data.
scheduleIMFL — Days of Cover by Brand
TN closing cases ÷ avg IMFL dispatch cases per dispatch date · —
Brand
Closing Cases
Avg Cases / Day
Days of Cover
Loading…
scheduleBeer — Days of Cover by Brand
TN closing cases ÷ avg Beer dispatch cases per dispatch date · —
Brand
Closing Cases
Avg Cases / Day
Days of Cover
Loading…
warningIMFL — Stockout Risk (SKU, market-wide)
IMFL SKUs with zero TN closing stock or below — days of cover
SKU
Closing Cases
Avg Cases / Day
Days of Cover
Loading…
warningBeer — Stockout Risk (SKU, market-wide)
Beer SKUs with zero TN closing stock or below — days of cover
SKU
Closing Cases
Avg Cases / Day
Days of Cover
Loading…
helpWhich depots are likely dry? — dispatch-gap proxy
This is not stock data.fact_stock has no depot grain, so a true
depot-level stockout cannot be computed. This lists depots that did receive the selected
at-risk SKU earlier in the window but received nothing of it on the most recent dispatch
date — a movement gap, labelled "likely stockout, unconfirmed". Treat as a call list to
verify, not as a measured shortage.
Depot
Last Received
Cases · Value Then
Signal
Pick an at-risk SKU.
blockZero-Movement Depot × SKU
Named rows, not just a count: each row is one depot that received something in the window
but never this SKU.
Depot
Category
Depot
SKU
Brand
Category
Sub-Category
Loading…
speedDepot Velocity — Top 10 / Bottom 10
By dispatch value over the window, with the single brand/SKU driving each depot's total
Depot
Value ₹
Cases
SKUs
Top Brand (share)
Top SKU
Loading…
compare_arrowsPeriod-over-Period Change
Deliberately not a "vs last month" — only — dispatch
dates exist in total. Pick the two windows to compare; both are compared as
average cases per dispatch date so windows of unequal length compare fairly.
Defaults to an earlier-half vs later-half split of everything loaded.
Earlier — from
Earlier — to
Later — from
Later — to
Group by
Group
Earlier — Avg Cases/Day
Later — Avg Cases/Day
Change
Loading…
Comparison
compare_arrowsMonth-on-Month State Comparison
This month vs prior month · ₹ Cr
local_barIMFL vs Beer — Volume Trend
Loading live dispatch data…
Today's MIS Compliance
fact_checkReport Arrival Status
As of · Green = succeeded · Amber = flagged · Red = error · (arrival-time tracking not populated yet)