Snowflake’s Native Semantic Views: Unlocking Easy, Efficient and Trusted AI-Powered BI for the Enterprise

AI-powered business intelligence (BI) has the potential to reshape the way we work with data. Conversational analytics experiences are being developed in the enterprise software ecosystem and being deployed across organizations. These text-to-SQL experiences can be prone to hallucinations when applied directly to enterprise-style schemas that are both opaque and hard to retrofit. To address the challenge, semantic layers serve as the bridge between raw data and meaningful insights, helping ensure that both AI and BI systems interpret information consistently and accurately. By embedding organizational context and definitions into the data layer, semantic models enable AI-powered BI solutions to provide trustworthy answers and empower business users to make informed decisions.
In this blog, we introduce Snowflake semantic views, a new schema-level object that stores all semantic model information natively in the database, replacing the current Cortex Analyst YAML file stored in a stage. We developed semantic views in response to a common customer need. Customers want AI-powered conversational analytics but worry about ungoverned data access and inconsistent or inaccurate answers. Often, these customers also use multiple BI tools. These customers want to:
Unlock AI-powered analytics use cases (e.g., making their data AI-ready), including conversational analytics.
Ensure existing BI dashboards and reports use the same semantic concepts as AI-powered analytics surfaces.
Shift their semantic models from the BI tool layer to the core data platform layer, ensuring consistency between the semantic information and the physical data layout
A recent customer we spoke with shared a desired-state picture (slightly modified here) that looked like this:

We were excited to see this picture, as it perfectly captures our intentions around semantic views: to provide a shared interface (for both metadata and query operations) that can power AI, BI and SQL analytics for Snowflake customers.
Snowflake semantic views unlock rich analytical capabilities across user surfaces, including AI-powered analytics, BI clients, Streamlit applications, Workspaces, Notebooks and custom applications. They capture a rich set of semantic information about underlying schemas, including tables and relationships. This information is projected to data consumers as business-relevant concepts like metrics, dimensions and facts. In Snowflake, semantic views capture the metadata required for consistent and accurate AI-powered analytics, such as synonyms, sample values and verified queries. Snowflake’s Cortex Search service enhances semantic views to leverage retrieval-augmented generation (RAG) for high-quality query results to natural language queries.
Creating semantic views
Let’s cover the basics of the semantic view schema object. You can create a semantic view in Snowflake via the Cortex Analyst UI, the database object explorer in Snowsight or a DDL statement. At a minimum, a semantic view definition contains:
“Physical” model objects (tables, views or SQL queries in the future)
Relationships between these physical objects
Dimensions (business-friendly attributes that group and filter analytical queries)
Metrics (business-friendly calculations and aggregations that represent KPIs)
You can read more on the model definition language for semantic views in our documentation here.
Here is an example of the DDL statement to create a semantic view:
CREATE OR REPLACE semantic view TPCDS_SEMANTIC_VIEW
TABLES (
CUSTOMER primary key (C_CUSTOMER_SK),
DATE as DATE_DIM primary key (D_DATE_SK),
ITEM primary key (I_ITEM_SK),
STORESALES as STORE_SALES
)
RELATIONSHIPS (
STORESALES(SS_CUSTOMER_SK) references CUSTOMER(C_CUSTOMER_SK),
STORESALES(SS_SOLD_DATE_SK) references DATE(D_DATE_SK),
SALESTOITEM as STORESALES(SS_ITEM_SK) references ITEM(I_ITEM_SK),
)
DIMENSIONS (
CUSTOMER.BIRTHYEAR as C_BIRTH_YEAR,
DATE.DATE as D_DATE,
DATE.YEAR as D_YEAR,
ITEM.BRAND as I_BRAND,
ITEM.CATEGORY as I_CATEGORY,
)
METRICS (
STORESALES.TOTALSALESPRICE as SUM(SS_SALES_PRICE),
STORESALES.TOTALSALESQUANTITY as SUM(SS_QUANTITY)
)
;
Semantic views, natively available in the Cortex Analyst studio experience, are critical to delivering high-quality conversational analytics experiences.

In Snowflake, semantic views support both traditional BI metadata (facts, dimensions and metrics), as well as metadata that is important for high-quality AI-powered analytics experiences. For example, semantic views can be extended to contain things like sample values, verified queries and custom instructions by using the semantic view modeling UI in Snowsight.

Custom instructions can be added to semantic views to help ensure high-quality responses that are specific to the analytics domain.

Additionally, verified queries can be attached to semantic views to provide context to increase Cortex Analyst response quality.

Finally, dimensions in Snowflake semantic views can leverage our Cortex Search service for a rich talk-to-your-data experience, responsive to natural language queries.

From Zero to semantic views
As we have been engaging with early adopters of semantic views, one of the consistent pieces of feedback (outside of loving the idea of a shared data platform interface for AI/BI) is that it’s difficult to get started with the creation of a high-quality semantic model. Often the “semantics” of a business are embedded in things like existing BI tool models, internal customer dashboards, SQL notebooks used by the data science team and even internal knowledge bases. To help with this process, we’ve developed an AI-powered semantic view assistant (currently in private preview) that allows data teams to leverage these existing assets to go from zero-to-semantic-view in just a few hours.

We are excited about the promise of this capability and excited to get it in the hands of our customers.
“Talking To” semantic views
Once created, a semantic view powers various analytical experiences. In Cortex Analyst, users can ask natural language questions of the semantic view and receive high-quality responses.
And, at Snowflake Summit today we introduced the ability to run SQL statements against Snowflake semantic views. This allows teams working on AI/BI initiatives to deliver easy, AI-powered access to data while ensuring consistent and governed access across all surfaces, including BI tools, Streamlit, Snowflake Intelligence and SQL clients.
In the code snippet below, a new SELECT
clause is used to query key metrics and dimensions from a semantic view, using SELECT * from SEMANTIC_VIEW ()
syntax.
SELECT * FROM SEMANTIC_VIEW
(
ADVANCED_ANALYTICS_SAMPLE_DATA.TPCDS_SF10.tpcds_semantic_view_sm
DIMENSIONS
Item.Brand,
Item.Category,
Date.Year,
Date.Month,
Store.State
METRICS
StoreSales.TotalSalesQuantity
WHERE Date.Year = '2002 AND Store.State ='TX' AND Item.Category = 'Books'
)
ORDER BY TOTALSALESQUANTITY DESC LIMIT 10;
When a Semantic SQL statement is run, Snowflake compiles the query by mapping business concepts (such as "TotalSalesQuantity") to the relevant measures and joins defined in the semantic view metadata. The SQL planner uses the key relationships and dimension mappings from the semantic definition to generate a valid query plan, enabling consistency and optimal performance. This means analysts can write high-level queries focused on business logic — instead of physical tables, obscure column names and joins. Also, as native Snowflake schema objects, semantic views have object-level access controls. You can grant or restrict usage and query rights on semantic views just as with tables and views, ensuring authorized, governed usage across SQL, BI and AI endpoints. You can read more about how to write “Semantic SQL” here.
Because Snowflake semantic views have been built to power high-quality AI experiences, they enable talk-to-your-data experiences to deliver high-quality results. In Cortex Analyst we’ve seen that semantic views help reduce hallucinations, eliminate conflicting results and significantly increase user trust in AI-powered results. With the introduction of Semantic SQL capabilities for semantic views, we have been able to increase the quality of our results by leveraging an innovative hybrid query-routing approach. With a new “Routing Mode” (now in private preview) Cortex Analyst will attempt to answer all questions first by leveraging our new SELECT * FROM SEMANTIC_VIEW
syntax. In cases where the question can’t be answered using this approach, the query will be constructed against the base schema. This allows Cortex Analyst to benefit from the consistency delivered by semantic views, while having the flexibility to resort to the base schema to answer more complicated questions. The results of this approach (shown in Figure 7) demonstrate even higher-quality responses in our text-to-SQL benchmarks.

And finally, because semantic views abstract away the complexity of underlying schemas and project business-friendly terms to data consumers, they are well-suited for the creation and sharing of data products. With our launch this week, we are excited to announce that semantic views can be attached to listings in the Snowflake Marketplace.

Partner momentum
With the addition of SQL-based query support for semantic views, customers are now able to use partner products to directly query semantic views.
In Sigma, users can access semantic views just as they would access physical tables in the warehouse — through an intuitive, spreadsheet-style interface. Your end users never need to know whether data is coming from a physical table or the semantic view; instead, Sigma abstracts away all the complexity and acts as an interface to your warehouse. All dimensions from your semantic view map one-to-one with columns in Sigma, and all of your metrics in your semantic view map one-to-one with metrics in Sigma. Sigma always queries your semantic view directly, so you never need to worry about definitions getting out of sync. As soon as you update your logic in your semantic view, that change is automatically reflected in Sigma as well.
Once users start with a metric or a table, they can do what Sigma does best: slice, pivot, filter, build dashboards or even build full data apps. It’s everything you love about Sigma, now powered by semantic logic that lives natively in your warehouse.
Also, Hex now integrates directly with Snowflake semantic views. With Hex Semantic Model Sync, you can define your semantic views in Snowflake and ingest them seamlessly into Hex — making it easier for both data and business users to confidently explore data and speed up analysis with Magic AI. From Hex’s no-code Explore experience, you can leverage governed measures, dimensions and joins defined in Snowflake. This means less time rewriting calculations and reconciling discrepancies, and more time delivering consistent insights to the business. Watch this demo video to learn more about Hex’s new integration.
Omni's integration lets users analyze semantic views right alongside other Snowflake objects using intuitive tools — Excel functions, natural language querying, SQL or point-and-click insights. Omni goes one step further by enabling teams to prototype metrics and dimensions in Omni workbooks and write DDL back to Snowflake using our APIs — meaning fast, user-friendly development of Snowflake semantic views and a consistent source of truth in Snowflake. The more teams evolve their semantic views, the harder it is to avoid breaking changes downstream — and Omni's robust developer features, like schema refresh, dynamic dev/test environments and content validation, help assure analysis stays in sync with your Snowflake environment at all times. You can see this entire flow in action here. With Omni and Snowflake semantic views, teams get the best of both worlds — fast and easy data exploration and semantic views that keep pace with your business. Learn more here.
RelationalAI now integrates with Snowflake semantic views, enabling a two-way sync between Snowflake semantics and the RelationalAI knowledge graph. You can import semantics defined in your knowledge graph — such as business concepts, measures and dimensions — directly into Snowflake semantic views, making them accessible to tools like Cortex Analyst. Conversely, semantic definitions from Snowflake can be populated into the knowledge graph to enrich models and applications. This bidirectional integration allows organizations to unify data and business knowledge across systems. Customers like Blue Yonder use RelationalAI to model complex application semantics for supply chain planning — semantics that can now be surfaced natively within Snowflake. This integration helps teams drive consistency, accelerate decision-making and power intelligent applications with a shared semantic foundation. Get started with the RelationalAI native app here.
What’s Next
Semantic views with SQL support are a public preview feature. While our modeling and language support unlocks improved quality for Cortex Analyst and basic capabilities for SQL-based queries, we will continue to move fast to unlock new capabilities for our customers and partners. We will enhance the sophistication of our modeling capabilities as well as expand the language support for our SQL interface. Feedback is welcome as we expand coverage and continue to evolve the capability; you can share your ideas here or reach out to your account team. To learn more about semantic views you can read the semantic view documentation. And, try out semantic views yourself by checking out the quickstart.