Agentic Data Analyst for Enterprise Analytics

ramp · Finance · 2025 · source Agentic: yes · promotional bias: low · source-backed · extracted with prompt 0.5.2 (schema v2)

Generated from extraction.json — do not edit by hand. Every claim cites verbatim source evidence; stated means the quote directly asserts the claim, implied means it supports it indirectly.

Problem

Domain: Enterprise analytics

Ramp needed to remove the bottleneck of data questions piling up behind a single on-call analyst.

Constraints:

Architecture

Ramp Research is a Slack-native agentic data analyst. User questions enter a Slack app and stateful thread, where the agent retrieves context from indexed dbt, Looker, and Snowflake metadata plus domain-owner documentation, then uses tools to inspect column values and rows in the warehouse instead of relying only on compressed search. Results stay in Slack with CSV previews for validation, while the context layer is evaluated through dbt-based tests that assert final answers and intermediate tool calls, table references, and query shape.

Diagram confidence: reconstructed (reconstructed from prose).

flowchart LR
  slack-interface[Slack interface] --> ramp-research-agent[Ramp Research agent]
  ramp-research-agent --> metadata-index[Metadata index]
  ramp-research-agent --> domain-documentation-filesystem[Domain documentation filesystem]
  ramp-research-agent --> warehouse-inspection-tools[Warehouse inspection tools]
  ramp-research-agent --> stateful-thread-context[Stateful thread context]
  ramp-research-agent --> csv-preview[CSV preview]
  context-evaluation-framework[Context evaluation framework] --> metadata-index
Drag to pan · scroll or use +/− to zoom · reconstructed from the source's described component topology

Components

Component Role Interacts with
slack-interface Slack app and channel/thread surface where employees ask questions, collaborate, receive answers, and validate CSV previews. ramp-research-agent, csv-preview
ramp-research-agent Agentic analyst that retrieves metadata, reasons through warehouse data, uses inspection tools, and produces answers in Slack. slack-interface, metadata-index, domain-documentation-filesystem, warehouse-inspection-tools, stateful-thread-context, csv-preview
metadata-index Aggregated dbt, Looker, and Snowflake metadata used to fetch the right models and form precise queries. ramp-research-agent
domain-documentation-filesystem Domain-owner technical documentation organized as files so the agent can access tacit business context. ramp-research-agent
warehouse-inspection-tools Tools for inspecting column values and row-level data, allowing the agent to branch and backtrack over warehouse evidence. ramp-research-agent
stateful-thread-context Conversation state that lets users clarify intent, collaborate in threads, and continue complex analysis with the agent. ramp-research-agent
csv-preview In-thread data preview that lets users validate results without leaving Slack for BI or warehouse tooling. slack-interface, ramp-research-agent
context-evaluation-framework Python mini-framework in the dbt project that tests the context layer, final answers, tool calls, table references, and query shape. metadata-index

Data flow

An employee asks a data question in Slack. Ramp Research retrieves relevant metadata from indexed dbt, Looker, and Snowflake context and consults domain documentation organized in a file system. For warehouse-scale questions it calls tools that inspect column values and row-level data, branching and backtracking like an analyst. The answer returns to the Slack thread with CSV previews so users can validate results without opening Redash or Snowflake. The same context layer is improved through dbt tests that check both the answer and the intermediate tool calls, table references, and query shape.

4 supporting quotes
“At Ramp, that context lives in dbt, Looker, and Snowflake. We aggregated and indexed this metadata, allowing the agent to fetch the right models and form precise queries.”article, stated
“These documents were then organized into a file system that Ramp Research can access as needed. Scale remained the challenge.”article, implied
“we gave the agent tools to inspect column values, branch, and backtrack – reasoning through the data the way a human analyst would.”article, stated
“We've added in-thread CSV previews so they can validate results without leaving Slack. This has been especially helpful to users less familiar with SQL and BI tools.”article, stated

Why this architecture

The architecture puts the agent in Slack because Slack is already the internal work hub, but gives it explicit context and warehouse tools because generic keyword/vector compression is insufficient for thousands of tables, tacit business context, and row-level questions. Evaluation is aimed at the context layer rather than every live question so Ramp can improve coverage without recreating the analyst bottleneck.

4 supporting quotes
“Slack is our internal hub, so it was the obvious choice of interface for Ramp Research.”article, stated
“Scale remained the challenge. Our analytics warehouse has thousands of tables and views, and many questions require row-level inspection to get right.”article, stated
“Rather than rely exclusively on generic compression methods, such as keyword or vector search, we gave the agent tools to inspect column values, branch, and backtrack”article, stated
“Rather than evaluating each question, we shifted to evaluating our context layer. With domain experts, we listed the high-priority concepts in every domain and wrote end-to-end tests.”article, stated

Scale

Alternatives considered (roads not taken)

Continue routing data questions through one on-call analyst in #help-data

Rejected because: Questions stacked up, answers arrived hours later, and many questions were never asked because adding to the queue felt costly.

“Each one becomes a ping in #help-data, stacking up behind a single on-call analyst. Tabs sprawl – across Looker, Snowflake, and dbt docs – and the answer lands hours later”article, stated

Ping domain owners for every in-domain question

Rejected because: This preserved the per-question human effort and recreated the request-volume bottleneck.

“This solution didn’t scale, as effort still increased with request volume and reintroduced the core bottleneck.”article, stated

Rely only on generic keyword or vector search compression

Rejected because: The warehouse scale and row-level inspection requirements needed tools that could inspect, branch, and backtrack through data.

“Rather than rely exclusively on generic compression methods, such as keyword or vector search, we gave the agent tools to inspect column values, branch, and backtrack”article, stated

Make users leave Slack for Redash or Snowflake to inspect data

Rejected because: In-thread CSV previews let less-SQL-fluent users validate results without switching tools.

“Early on, users had to open Redash or Snowflake to inspect data and verify answers. We've added in-thread CSV previews so they can validate results without leaving Slack.”article, stated

Patterns

rag-retrieval (analytics)

Ramp indexed warehouse and BI metadata so the agent can form precise queries.

“Large-scale data, without the necessary context, is nearly impossible to use. At Ramp, that context lives in dbt, Looker, and Snowflake. We aggregated and indexed this metadata, allowing the agent to fetch the right models and form precise queries.”article, stated

human-in-the-loop-gate (validation)

CSV previews let users validate answers in-thread.

“Early on, users had to open Redash or Snowflake to inspect data and verify answers. We've added in-thread CSV previews so they can validate results without leaving Slack. This has been especially helpful to users less familiar with SQL and BI tools.”article, stated

Tradeoffs

Evaluate the context layer instead of routing every in-domain question through humans.

Chose Domain concept tests and intermediate-step assertions over A human-in-the-loop Slack ping for every in-domain data question.

Rationale: Per-question human review recreated the analytics bottleneck the agent was supposed to remove.

“Our first approach was to implement a human-in-the-loop system in Slack that pinged domain owners for every in-domain question. This solution didn’t scale”article, stated

How to retrieve useful context from a warehouse with thousands of tables and tacit business knowledge.

Chose agent tools that inspect column values, branch, and backtrack over indexed metadata and documentation over generic keyword or vector-search compression alone.

Rationale: Row-level analytics questions require active inspection and reasoning, not just a compressed context snippet.

“Rather than rely exclusively on generic compression methods, such as keyword or vector search, we gave the agent tools to inspect column values, branch, and backtrack”article, stated

Where users should validate generated data answers.

Chose in-thread CSV previews inside Slack over forcing users to open Redash or Snowflake for every verification.

Rationale: Keeping validation in the collaboration surface lowers friction for users who are less familiar with SQL and BI tools.

“We've added in-thread CSV previews so they can validate results without leaving Slack. This has been especially helpful to users less familiar with SQL and BI tools.”article, stated

Gotchas (what bit them)

Human-in-the-loop domain-owner routing did not scale.

Root cause: Every in-domain question still consumed analyst effort.

Resolution: Ramp moved toward agentic metadata retrieval and stateful answers.

“Our first approach was to implement a human-in-the-loop system in Slack that pinged domain owners for every in-domain question. This solution didn’t scale, as effort still increased with request volume and reintroduced the core bottleneck.”article, stated

Evaluation

Ramp tracked questions answered, conversations, users, and volume increase.

Metrics: questions answered · conversations · users · question volume

“Ramp Research is our in-house AI analyst agent, able to answer data* questions directly in Slack, 24/7, in minutes – not hours. Since launching in early August, Ramp Research has answered over 1,800 data questions across more than 1,200 conversations with 300 different users.”article, stated

Outcomes

The summary reports 10-20x more data questions than the traditional channel.

“Since launching in early August 2025, it has answered over 1,800 questions across 1,200+ conversations with 300 users, representing a 10-20x increase in question volume compared to the traditional help channel, enabling faster decision-making and better customer outcomes.”summary, stated