Snowflake Cortex is a suite of fully managed AI and machine learning services within the Snowflake Data Cloud, making generative AI accessible through SQL and Python. Cortex makes it possible to analyze structured and unstructured data securely inside a Snowflake account. It features tools like Cortex Analyst (text-to-SQL) and Cortex Search (RAG) for building AI applications like chatbots, automating tasks, and deriving insights from data.
Cortex AI offers several core capabilities that support different AI-driven use cases within the Snowflake ecosystem:
This is part of a series of articles about Snowflake pricing
Let’s review the key capabilities of Snowflake Cortex and how they can benefit your organization.
Cortex Agents operate as orchestrators that coordinate across structured and unstructured data sources to deliver relevant, accurate responses. They parse a user’s request, create a plan, select the appropriate tools—such as Cortex Analyst for SQL-based structured data or Cortex Search for documents—and execute subtasks using built-in and custom logic.
Agents handle ambiguous or complex queries by exploring multiple interpretations, breaking them into smaller subtasks, and routing each subtask to the right function. For example, a question involving both sales metrics and contract comparisons may be decomposed into separate structured and unstructured analysis tasks. After retrieving results, the agent reflects on the output and decides the next step, whether it's further clarification or generating a final response.
Agents can also use stored procedures and user-defined functions (UDFs) to support custom tools and logic, enabling tailored responses. Monitoring tools like TruLens let developers observe agent behavior and refine performance over time. This combination of planning, tool routing, execution, and reflection makes Cortex Agents suitable for building enterprise-grade applications that require both accuracy and compliance.
Cortex AI Functions provide a set of serverless tools to perform AI-driven tasks like classification, summarization, translation, and document parsing directly within Snowflake using SQL or Python. These functions are backed by top-tier LLMs from providers like OpenAI, Anthropic, Meta, and Mistral, all running within Snowflake’s secure infrastructure.
Functions such as AI_COMPLETE, AI_CLASSIFY, and AI_EXTRACT support a variety of use cases—from parsing support tickets to redacting sensitive information or transcribing audio files. Helper functions, like AI_COUNT_TOKENS and TO_FILE, assist with prompt construction and function execution. For example, AI_EMBED produces vectors for semantic similarity searches, while AI_FILTER evaluates input data against rules to support downstream filtering.
Cortex AI Functions are designed for high-throughput workloads and support batch processing. For latency-sensitive scenarios, REST APIs are available. Functions can be integrated into pipelines, dashboards, or applications while keeping the data inside Snowflake for performance, security, and governance.
Cortex Analyst enables natural language interaction with structured data by converting questions into accurate SQL queries. Designed for non-technical users, it removes the need to write or understand SQL, offering an API-first interface that can be integrated into applications like chatbots, Slack, or dashboards.
The system relies on a semantic model, defined in YAML, which captures business logic, enabling precise query generation beyond what raw database schemas can provide. Cortex Analyst also automatically determines which dataset to query, even in environments with multiple data sources.
Under the hood, it uses Snowflake-hosted LLMs and semantic intelligence to ensure responses are accurate and context-aware. All queries are executed within Snowflake’s compute engine, adhering to enterprise security policies through role-based access control. Data never leaves the Snowflake environment, ensuring full compliance with privacy and governance standards.
Cortex Fine-tuning allows users to adapt pre-trained large language models to their specific use cases by training custom adaptors using their own data. This approach, based on parameter-efficient fine-tuning (PEFT), offers better latency and task accuracy than prompt engineering or RAG, without the cost of training a full model from scratch.
The fine-tuning process is managed through the FINETUNE function, which supports commands like CREATE, SHOW, DESCRIBE, and CANCEL to manage training jobs. It measures cost and performance in terms of tokens processed and training epochs completed.
Once a fine-tuned model is deployed, users can invoke it through functions like AI_COMPLETE. All data and model adaptations remain inside Snowflake, ensuring secure, governed access. Fine-tuning enables organizations to specialize LLM behavior for domain-specific tasks such as regulatory compliance checks, customer support automation, or internal knowledge base interaction—without leaving the Snowflake ecosystem.
Cortex Search enables hybrid search—combining vector and keyword techniques—over your text data in Snowflake with minimal setup. It’s designed for low-latency and high-accuracy retrieval, without requiring manual management of embeddings, indexes, or infrastructure. This makes it well-suited for building search features or LLM applications without needing to tune search parameters or refresh indexes manually.
The two main use cases for Cortex Search are retrieval-augmented generation (RAG) and enterprise search. For RAG, Cortex Search acts as the retrieval engine that feeds relevant context into large language models, allowing chatbots to generate grounded, up-to-date responses based on proprietary Snowflake data. For enterprise applications, it can serve as a backend for intelligent search bars embedded in apps or internal tools.
Cortex Search integrates directly with other Cortex components, such as LLM functions, to support end-to-end search and generation workflows. This makes it a key building block for intelligent applications that require fast, accurate, and governed access to unstructured or semi-structured content.
Snowflake Copilot is a built-in assistant that uses large language models to simplify querying and data exploration in Snowflake. It works within SQL Worksheets and Snowflake Notebooks in Snowsight, letting users ask natural language questions, generate SQL queries, troubleshoot issues, and get documentation-based guidance—all without leaving the Snowflake UI.
Copilot is powered by a fine-tuned model running entirely within Snowflake Cortex, ensuring that data and metadata never leave Snowflake’s secure boundary. It respects role-based access control (RBAC), meaning it only provides insights based on the datasets the user is authorized to see.
To use Copilot, users need the SNOWFLAKE.COPILOT_USER database role, which is granted to all users by default via the PUBLIC role. This access can be restricted and delegated to specific roles as needed. Copilot helps both technical and non-technical users explore data, improve SQL fluency, and accelerate data analysis with contextual, intelligent support built into the platform.
Snowflake Intelligence provides an interface for exploring data and generating insights using natural language. It connects structured and unstructured data from across the organization and uses AI agents, powered by Cortex AI Functions, Cortex Analyst, and Cortex Search, to answer questions, surface trends, and create visualizations.
Agents in Snowflake Intelligence are built on semantic models and views, allowing them to reason over business logic and provide accurate, context-aware responses. Users can interact with the system through chat interfaces and receive direct answers or visual outputs without needing to write queries or code.
It supports models like Claude 4.5, GPT-5, and others, selected automatically for best performance based on availability and region. For regions where certain models are not natively available, Cortex Cross-region inference can be used to access them. This ensures that users get the best possible performance regardless of their cloud or region setup.
Snowflake Intelligence is designed to help organizations turn complex, distributed data into actionable intelligence with minimal friction, using governed AI integrated into the Snowflake Data Cloud.
Cortex Search Services in Snowflake incur costs across several categories: virtual warehouse compute, embedding token compute, serving compute, storage, and cloud services compute. Each cost type impacts the total spend, depending on how the service is configured and how often the data changes.
Warehouse compute is used when initializing or refreshing a Cortex Search Service. This includes querying the source data, embedding new or updated rows, and building search indexes. Credits are consumed only if the underlying data has changed.
There is no fixed price, as warehouse cost depends on warehouse size and frequency of data changes. However, using a MEDIUM or LARGE warehouse is often sufficient, and increasing beyond that usually provides no additional performance benefit for indexing.
Each row’s text is embedded into vector space using functions like EMBED_TEXT_768. This is charged per token, only for new or updated rows. Cost depends on the model selected.
Example:
If your service processes 10 million rows, each with 500 tokens, and your model costs 0.05 credits per 1 million tokens, the initial embedding cost would be:
(10,000,000 rows) * (500 tokens) / 1,000,000 * 0.05 = 250 credits
Tokens are approximately 4 characters or ¾ of an English word. Use the COUNT_TOKENS function to estimate tokens per row using real data.
Services using multiple indexed columns or high-dimensional embeddings incur higher embedding and serving costs. Each index column adds to the compute and storage load.
Example:
A multi-index service with 10 million rows and 2 vector indexes, each using 768-dimensional vectors, would have a monthly serving cost of:
(10,000,000 rows) * ((2 * 768 * 4) + 1,000 bytes) / 1,000,000,000 * 6.3 credits per GB = 448.1 credits per month
Serving compute is billed per GB per month of indexed data, which includes both raw text and vector embeddings.
Example:
For 10 million rows, each with 768-dimension embeddings and ~1,000 bytes of source text, the monthly cost is:
(10,000,000 * (768 * 4 + 1,000)) / 1,000,000,000 * 6.3 credits = 256.5 credits per month
This cost applies as long as the service is running, even if no queries are made. Suspend serving when not needed to save credits.
Cortex Search Services materialize the source query and build optimized index structures, all stored in your Snowflake account. Charges are applied per terabyte (TB) of stored data.
You can estimate storage by materializing the source query using CORTEX_SEARCH_DATA_SCAN and checking table size.
Used to detect changes in underlying data and determine when to trigger refreshes. Snowflake only bills this if your daily cloud services cost exceeds 10% of your daily warehouse cost.
These costs are typically low for use cases with infrequent data changes.
While Snowflake Cortex offers powerful AI capabilities within the data cloud, there are several current limitations that organizations should be aware of before deploying Cortex-powered applications at scale. These limitations were reported by users on Gartner Peer Insights:
These limitations highlight areas where Snowflake Cortex is still maturing. Organizations should plan accordingly to manage costs, enforce security, and create effective developer workflows.
Finout extends its FinOps platform to Snowflake, applying the same visibility, allocation, and anomaly detection teams already use for cloud and Kubernetes spend. Instead of reporting Cortex costs at a category level, such as a single line for "Agents" or "Search," Finout breaks spend down by individual Cortex service (Cortex AI Functions, Cortex Analyst, Cortex Search, Cortex Agents, Snowflake CoCo, Document AI, Cortex Fine-tuning, and Provisioned Throughput), by model, function type, warehouse, and query type, converting credits into dollar figures that reconcile directly with the Snowflake invoice.
Once inside Finout, Cortex spend is treated like any other cost. Anomaly detection flags unexpected spikes tied to a specific model or use case, Virtual Tags allocate spend to the teams responsible, and showback and chargeback reporting run through the same dashboards used for cloud and Kubernetes costs, all without extra tooling or permissions beyond the standard Finout Snowflake integration.