How to Set Up Snowflake Intelligence
Last updated Apr 9, 2026

What Snowflake Intelligence Does and Why It Matters
Snowflake Intelligence is a standalone agent available at ai.snowflake.com. You type a question in plain English, and the system translates it into SQL, runs it against your Snowflake warehouse, and returns an answer with supporting data. It works on both structured tables and unstructured documents stored in Snowflake stages.
Under the hood, Intelligence spins up Cortex Agents that orchestrate multiple services: large language models for understanding your question, Cortex Analyst for text-to-SQL conversion on structured data, and Cortex Search for retrieving relevant unstructured content. The result is a single conversational interface that replaces the cycle of writing queries, building charts, and copying numbers into slides.
According to Snowflake's own benchmarks, Cortex Analyst achieves over 90% accuracy on standard text-to-SQL benchmarks when semantic models are well-defined. That accuracy depends heavily on how you set up the semantic layer, which is what this guide covers.
Prerequisites Before You Start
You need four things in place before creating a Snowflake Intelligence instance.
First, an active Snowflake account on any cloud provider (AWS, Azure, or GCP). Intelligence is available on all current Snowflake editions, but you need at least Enterprise edition for some Cortex features.
Second, the ACCOUNTADMIN role or a custom role with the CREATE SNOWFLAKE INTELLIGENCE ON ACCOUNT privilege. This is required to create the Intelligence object itself. Day-to-day users only need access grants to the specific Intelligence instance.
Third, structured data already loaded into Snowflake tables. Intelligence queries your existing tables directly. If your data lives in CSV files or external systems, load it into Snowflake first using COPY INTO or Snowpipe.
Fourth, basic familiarity with YAML syntax. The semantic model that tells Intelligence how to interpret your data is a YAML file. You do not need to write SQL, but you do need to define mappings between business terms and column names.
Step 1: Build Your Semantic Model
The semantic model is a YAML file that acts as a translation layer between business language and your database schema. Without it, Intelligence has no way to know that "revenue" means the sum of your order_total column or that "region" maps to shipping_state.
Start with a focused scope. Snowflake recommends no more than 3 to 5 tables and 10 to 20 columns per table in your initial model. A well-scoped model produces more accurate results than a broad one that tries to cover everything.
Here is a minimal example for a retail dataset:
name: retail_analytics
tables:
- name: orders
base_table:
database: ANALYTICS_DB
schema: PUBLIC
table: ORDERS
dimensions:
- name: order_id
expr: ORDER_ID
description: Unique order identifier
- name: region
expr: SHIPPING_STATE
description: US state where the order was shipped
time_dimensions:
- name: order_date
expr: ORDER_DATE
description: Date the order was placed
data_type: DATE
measures:
- name: revenue
expr: ORDER_TOTAL
description: Total order value in USD
default_aggregation: sum
- name: order_count
expr: ORDER_ID
description: Number of orders
default_aggregation: count
Each table in the model has three column types. Dimensions are categorical fields like region, product name, or customer segment. Time dimensions are date or timestamp columns used for filtering and trending. Measures are numeric columns that get aggregated (summed, averaged, counted).
The description field on each column is critical. Intelligence uses these descriptions to match natural language questions to the right columns. Write them as plain English definitions, not technical notes.
Step 2: Upload the Semantic Model to a Stage
Create a Snowflake stage to hold your YAML file. In a SQL worksheet in Snowsight, run:
CREATE STAGE IF NOT EXISTS semantic_models
DIRECTORY = (ENABLE = TRUE)
ENCRYPTION = (TYPE = 'SNOWFLAKE_SSE');
Then upload your YAML file. You can do this through the Snowsight UI by navigating to Data, then Stages, selecting your stage, and clicking Upload. Or use the PUT command from SnowSQL:
PUT file:///path/to/retail_analytics.yaml
@semantic_models/
AUTO_COMPRESS = FALSE
OVERWRITE = TRUE;
Set AUTO_COMPRESS to FALSE. Intelligence needs to read the raw YAML, not a gzipped version.
Step 3: Create the Snowflake Intelligence Object
Switch to the ACCOUNTADMIN role and navigate to AI & ML in the left sidebar of Snowsight, then select Intelligence. Click "Create new" and follow the setup wizard.
You will connect three things: your semantic model YAML (pointed at the stage path), optionally a Cortex Search service for unstructured documents, and any custom tools you want the agent to use.
For a first setup, keep it simple. Connect only your semantic model and skip Cortex Search and custom tools. You can add those later without recreating the Intelligence object.
After creation, grant access to the roles that need it:
GRANT USAGE ON SNOWFLAKE INTELLIGENCE my_intelligence
TO ROLE analyst_role;
Step 4: Configure the Warehouse
Intelligence needs a warehouse to execute the SQL it generates. Assign an X-Small or Small warehouse to start. The text-to-SQL generation itself is handled by Cortex (billed per token), but the actual query runs on your warehouse and is billed by compute time.
Oversizing the warehouse is the most common cost mistake. An X-Small warehouse handles most ad-hoc analytical queries comfortably. Scale up only if you see consistent queue times on complex joins.
Step 5: Test with Real Questions
Open your Intelligence instance and start with questions that directly match your semantic model. For the retail example above:
- "What was total revenue last month?"
- "Show me order count by region for Q1 2026"
- "Which region had the highest average order value?"
If a question returns unexpected results, check two things. First, verify the column description in your YAML matches the intent of the question. Second, confirm the default_aggregation is correct. A measure defined with sum aggregation will behave differently than one defined with avg.
Intelligence shows the generated SQL alongside each answer. Review it for the first dozen questions to calibrate whether the semantic model is interpreting your terms correctly.
Step 6: Iterate on the Semantic Model
Your first model will not be perfect. Track which questions produce wrong results and update the YAML accordingly. Common fixes include adding synonyms to descriptions (for example, "Total order value in USD, also called sales or gross revenue"), adding missing dimensions that users frequently ask about, and splitting overly broad measures into more specific ones.
Re-upload the updated YAML to the same stage path. Intelligence picks up changes on the next query without requiring a restart.
Costs to Expect
Snowflake Intelligence costs break into two buckets. Cortex AI credits cover the text-to-SQL conversion and natural language processing. Warehouse compute credits cover executing the generated queries.
For a team of 5 to 10 analysts running 50 to 100 questions per day against a well-scoped model, expect Cortex costs in the range of 5 to 15 credits per day. Warehouse costs depend on query complexity and warehouse size, but an X-Small warehouse running those same queries typically uses 2 to 8 credits per day.
Monitor costs in the Snowflake cost management dashboard under AI & ML services.
When Snowflake Intelligence Is the Right Fit
Intelligence works best when your data is already in Snowflake, your users ask recurring analytical questions that currently require an analyst to write SQL, and you want to reduce the time between question and answer from hours to seconds.
It is not a replacement for full BI platforms like Tableau or Looker if you need persistent dashboards, scheduled reports, or pixel-perfect formatting. It occupies a different layer: fast, conversational access to data for people who know what they want to ask but cannot write the query themselves. If your data lives in spreadsheets or CSVs and you want to skip the warehouse setup entirely, tools like VSLZ AI let you upload a file and ask questions in plain English without any infrastructure configuration.
Practical Summary
Start small. Build a YAML semantic model covering 3 to 5 tables with clear descriptions. Upload it to a Snowflake stage. Create the Intelligence object with ACCOUNTADMIN. Assign an X-Small warehouse. Test with real questions and iterate on the model based on what Intelligence gets wrong. The entire setup takes under an hour if your data is already in Snowflake.
FAQ
What Snowflake edition do I need for Snowflake Intelligence?
Snowflake Intelligence is available on all current Snowflake editions, but some underlying Cortex features require Enterprise edition or higher. Check your account edition under Admin > Account in Snowsight before starting setup.
How much does Snowflake Intelligence cost per month?
Costs depend on usage volume. Cortex AI credits cover the natural language processing (roughly 5 to 15 credits per day for a small team running 50 to 100 queries). Warehouse compute credits cover executing the generated SQL. An X-Small warehouse running those queries adds 2 to 8 credits per day. Monitor costs in the Snowflake cost management dashboard under AI and ML services.
Can Snowflake Intelligence query unstructured documents like PDFs?
Yes. You can connect a Cortex Search service to your Intelligence instance, which indexes unstructured documents stored in Snowflake stages. The agent then searches those documents alongside your structured tables when answering questions. This requires additional setup beyond the basic semantic model.
How do I improve accuracy of Snowflake Intelligence answers?
Write detailed descriptions for every column in your semantic model YAML. Include synonyms and business context. Keep the model scoped to 3 to 5 tables with 10 to 20 columns each. Review the generated SQL for the first dozen questions and update descriptions where Intelligence misinterprets terms. Iteration on the semantic model is the single biggest lever for accuracy.
Does Snowflake Intelligence replace Tableau or Looker?
No. Intelligence provides fast conversational access to data for ad-hoc questions. It does not create persistent dashboards, scheduled reports, or formatted visualizations. It complements BI tools by handling the quick one-off questions that currently require an analyst to write SQL.


