The Code-First BI Platform
Replacing Drag-and-Drop BI with Version-Controlled, Self-Hosted Analytics
A Wohlig Transformations Whitepaper
Executive Summary
Drag-and-drop BI suites — Tableau, Looker, Power BI — were the right architecture for the 2010s. In 2026, they are the source of three expensive problems: per-seat licensing that scales linearly with read access, dashboard sprawl with no enforced single source of truth, and a governance model that does not match the rest of modern software engineering (no diff, no review, no rollback, no audit trail).
Wohlig’s Code-First BI Platform is a deployed-into-your-cloud analytics architecture that replaces these suites with a Markdown + SQL workflow on top of your existing warehouse. KPIs live in version-controlled files. Reviews happen via pull request. Outputs render as a fast static site readable by unlimited users at zero per-seat cost. SOC 2, RBI, HIPAA, and DPDP audit becomes a side effect of using Git.
This paper describes the architecture, the migration approach from existing BI estates, the governance model, and the engagement plan.
1. The Problems with the Current BI Stack
Per-seat cost — ₹15–25 lakh per year for a 100-seat enterprise estate, growing every quarter.
Dashboard sprawl — 60–200 active dashboards typical; majority unused or redundant.
Definition drift — Multiple versions of “active customer” / “net revenue” / “ARR” running in parallel.
No audit trail — Who changed the CAC formula in March, and on whose authority? Usually unknowable.
Slow analytics delivery — Weeks from “we need this report” to “report ships.”
Vendor lock-in — Proprietary file formats; data definitions trapped inside the suite.
2. The Code-First Pattern
A different architectural choice on three axes:
Authoring — Markdown files containing fenced SQL blocks and declarative chart components. Stored in Git.
Build — A static-site compiler turns the Markdown + SQL into a publishable, fast HTML site. Heavy lifting happens at build time; the runtime is a CDN.
Read — Business users open a URL. No client install, no per-seat license, no provisioning ticket.
The query engine pushes down to the warehouse the customer already runs (Snowflake, BigQuery, Redshift, Databricks, Postgres, MySQL, ClickHouse). An embedded columnar engine handles in-page interactive queries on the result sets.
3. Reference Architecture
┌──────────────────────────────────────────────────┐
│ Customer Cloud (GCP / AWS / Azure) │
│ │
│ ┌──────────────┐ │
│ │ Git Repo │ ◀──── Analyst PRs │
│ │ (.md + SQL) │ │
│ └──────┬───────┘ │
│ │ push │
│ ▼ │
│ ┌──────────────┐ │
│ │ Build & CI │── lint · dry-run · test │
│ └──────┬───────┘ │
│ │ deploy │
│ ▼ │
│ ┌──────────────┐ ┌────────────────┐ │
│ │ Static Site │ ◀──────▶│ Warehouse │ │
│ │ (CDN) │ │ (Snowflake / │ │
│ │ │ │ BigQuery / │ │
│ │ embedded │ │ Redshift / │ │
│ │ columnar │ │ Databricks) │ │
│ │ engine │ └────────────────┘ │
│ └──────┬───────┘ │
│ │ SSO + RBAC + RLS │
│ ▼ │
│ ┌──────────────┐ │
│ │ Business │ │
│ │ Users │ │
│ └──────────────┘ │
└──────────────────────────────────────────────────┘
Deployment options: any static host inside the customer’s perimeter (Cloud Storage + Cloud CDN, S3 + CloudFront, on-prem nginx). SSO via the customer’s identity provider. Row-level security implemented at the warehouse layer.
4. Governance Model
The code-first pattern moves analytics governance into the same workflow engineering already uses:
Pull request workflow — every metric change goes through code review.
Diff-able definitions — what changed in
revenue.sqlbetween Q2 and Q3 is one diff.Test coverage on critical metrics — automated assertions catch regressions before they ship.
Lint and dry-run on PR — bad SQL is rejected at the gate.
Deploy on merge — main branch is production. Hotfix is a PR.
Audit trail = Git history — SOC 2, RBI, HIPAA, DPDP evidence for analytics changes is the commit log.
For regulated environments, an enterprise tier adds SSO, row-level security, scheduled refresh, and SIEM integration.
5. Migration Approach
Wohlig has a structured migration playbook from existing BI estates.
Step 1 — Inventory. Catalog every active dashboard, its owner, its frequency of use, and its critical metrics.
Step 2 — Consolidate definitions. For every business-critical metric (ARR, CAC, retention, GMV, NPS, etc.), establish one version-controlled SQL definition. Resolve duplicates and conflicts explicitly with the business owner.
Step 3 — Port high-value dashboards. Reproduce the top 20% of dashboards (by usage) on the new platform first.
Step 4 — Run in parallel. Keep the old suite live while the new platform stabilizes. Validate numbers match.
Step 5 — Decommission. Cut over departments to the new platform on a schedule. Reduce the legacy suite to the long-tail dashboards that are not worth porting. Eventually retire it.
Typical timeline: 12–20 weeks from kickoff to legacy decommission for a mid-size enterprise estate.
6. Outcomes
BI license cost reduction — 70–95%
Time-to-ship a new report — from days/weeks to hours
Dashboard count consolidation — 40–70% reduction (kill duplicates and unused)
Audit-ready metric change history — yes (Git native)
Read-seat scalability — unlimited (it’s a website)
Embedded analytics readiness — yes (drop into your product)
7. Engagement Model
Phase A — Discovery & inventory (2–3 weeks). Audit existing estate, define critical metric set, design Git workflow.
Phase B — Foundation deploy (3–4 weeks). Stand up platform in customer cloud, wire to warehouse, configure SSO and RBAC, port first 5 critical reports.
Phase C — Migration (8–16 weeks). Port high-value dashboards. Resolve metric definitions. Train analysts. Run parallel.
Phase D — Decommission (4–8 weeks). Cut over departments. Retire legacy estate. Optimize.
8. About Wohlig
Wohlig Transformations is a digital transformation, cloud, and AI consulting firm founded in 2016. We have completed 20+ cloud migrations, shipped 10+ generative-AI solutions in production, and hold 40+ Google Cloud certifications including a Data Analytics specialization. We serve governments (Maharashtra, Gujarat, ONDC), enterprises (Lodha, Eros Now, Hungama), and high-growth consumer companies (Swiggy, Ninjacart, PW Live).
Offices: India and London. Web: www.wohlig.com.
To discuss your BI consolidation or migration, reach Wohlig at chintan@wohlig.com.


