
Enterprise Analytics Copilot Cuts Analyst Query Time to 90 Seconds
SpeedMVPs built a natural-language analytics copilot on top of their existing Snowflake warehouse, using GPT-4o for NL-to-SQL generation with a schema-aware prompt layer that respected their existing column-level permissions and data masking policies. The system included a governed query sandbox (read-only analyst role, query cost cap via Snowflake resource monitors), an in-browser result explorer with chart auto-generation via Recharts, and a full audit log of every question, generated SQL, and result set stored in Postgres for compliance review.
Book a free 30-minute callProject Overview
What We Built
- SpeedMVPs built a natural-language analytics copilot on top of their existing Snowflake warehouse, using GPT-4o for NL-to-SQL generation with a schema-aware prompt layer that respected their existing column-level permissions and data masking policies. The system included a governed query sandbox (read-only analyst role, query cost cap via Snowflake resource monitors), an in-browser result explorer with chart auto-generation via Recharts, and a full audit log of every question, generated SQL, and result set stored in Postgres for compliance review.
The Challenge
- Meridian DataWorks's BI team of 12 analysts was fielding 80+ ad-hoc data requests per week from business stakeholders, each requiring manual SQL authoring against a 400-table Snowflake warehouse with strict row-level security policies. Non-technical executives had zero self-serve access, creating a chronic 3-day average turnaround that was blocking revenue decisions. Existing BI tooling (Tableau) could not safely expose raw warehouse access without violating their SOC 2 data governance rules.
Our Solution
- NL-to-SQL generation with schema context injection across 400 Snowflake tables
- Column-level access governance enforced at query-generation time via role mapping
- Auto-generated Recharts visualizations (bar, line, scatter) from query result schema
- Full audit trail: question → generated SQL → result fingerprint stored in Postgres
- Query cost guardrails via Snowflake resource monitors with per-user spend caps