Ad-hoc Reporting
Ad-hoc reporting is the practice of creating reports on demand to answer a specific question, without relying on a pre-built dashboard or scheduled delivery. A user frames a question, builds a query or visual, gets the answer, and either discards the result or saves it for reference. The report exists because someone had a question, independent of whether anyone anticipated it.
This differs from scheduled reporting, where a fixed set of metrics gets computed and distributed on a recurring cadence – daily revenue summaries, weekly pipeline snapshots, monthly board decks. Scheduled reports answer known questions. Ad-hoc reports answer the questions that arise between those scheduled deliveries: "Why did conversion drop on Tuesday?" or "Which accounts in APAC renewed at a discount greater than 20%?"
Two approaches to ad-hoc reporting
Most BI tools support ad-hoc reporting through one of two interfaces, and some offer both.
SQL-based. The user writes a query directly against the data warehouse or a semantic layer's SQL interface. This gives maximum flexibility – any question the database can answer is reachable. The tradeoff is that it requires SQL fluency and knowledge of the schema. In practice, this path is limited to analysts and data-literate operators.
Visual or drag-and-drop. The user selects dimensions, metrics, and filters from a menu, and the BI tool generates the underlying query. This lowers the skill barrier and keeps queries within the boundaries the tool defines. The tradeoff is expressiveness – the user can only ask questions the interface exposes.
Both approaches can be governed or ungoverned, depending on whether the query runs through a semantic layer or hits raw tables directly.
The governance problem
Ad-hoc reporting creates a tension with data governance. The whole point is to give users freedom to explore. But unconstrained exploration means users can write queries that define metrics differently from the organization's agreed-upon definitions. One analyst calculates "churn" as accounts lost divided by accounts at period start. Another divides by accounts at period end. Both queries run. Both return numbers. Neither flags the discrepancy.
This problem compounds at scale. Ten analysts running ad-hoc queries against raw tables will produce ten slightly different versions of the same metric. The resulting confusion is predictable: "Which number is right?" conversations, eroded trust in data, and eventually a retreat to asking the data team for everything – which defeats the purpose of self-service.
How semantic layers enable governed ad-hoc reporting
A semantic layer resolves the tension by separating what users can ask from how the answer gets computed. Users pick dimensions, metrics, and filters freely – that's the ad-hoc part. But the metric definitions, join logic, and filter conditions are locked in the semantic layer. "Revenue" always means the same thing, regardless of who built the report or when.
This makes ad-hoc reporting safer to scale. New users can explore data without risk of defining metrics incorrectly, because the definitions aren't theirs to write. They compose questions from governed building blocks.
Relationship to parameterized reports
Ad-hoc reports and parameterized reports serve different needs. A parameterized report is a pre-designed template that accepts dynamic inputs – a date range, a region filter, a tenant ID – and renders a fixed layout with variable data. It answers a known question with variable context. An ad-hoc report answers an unknown question. The user defines both the question and the structure from scratch.
In mature data organizations, parameterized reports handle the recurring 80% of questions, and ad-hoc reporting covers the exploratory 20% that no one predicted. Getting the ratio right reduces ad-hoc volume without restricting the analysis that actually needs freedom.
The Holistics Perspective
Holistics enables ad-hoc reporting through governed exploration – users build custom reports by combining metrics and dimensions from the semantic layer. The queries stay governed because the underlying logic is defined in AML, even when the report itself is one-off.
See how Holistics approaches this →