{"templateName":"blog-page","allowedRenditionsWidth":["320","480","640","768","960","1200","1440","1920"],"cssClassNames":"blog-page page basicpage summit-page","description":"Measure your account's AI readiness with Snowflake's AI Readiness Score skill in Cortex Code. Evaluate demand coverage, semantic views, and data quality.","language":"en","title":"AI Readiness Score: Evaluate Your Data for AI","analyticsPageType":"homepage","analyticsCategory":"general","analyticsSubCategory":"","excludeFromAnalytics":false,":mappedPath":"/en/blog/engineering/ai-readiness-score-data-framework0/",":type":"snowflake-site/components/structure/page","analyticsContentTags":["snowflake-site:taxonomy/blog/engineering-blog/core-platform","snowflake-site:taxonomy/blog/engineering-blog/data-engineering"],"analyticsEnabled":true,":hierarchyType":"page",":path":"/content/snowflake-site/global/en/blog/engineering/ai-readiness-score-data-framework0","isPasswordProtected":false,"coveoConfig":{"organizationId":"snowflakecomputingproduction8neljofn","apiKey":"xx335921a6-2a0a-40f2-a167-e390b4766c3d","pipeline":"snowflake.com","searchHub":"snowflake.com"},"analyticsDebugMode":false,"analyticsData":{"excludeFromAnalytics":false,"subCategory":"","pageType":"homepage","templateName":"blog-page","siteName":"snowflake","pageUrl":"/content/snowflake-site/global/en/blog/engineering/ai-readiness-score-data-framework0","language":"en","category":"general","pageName":"Is Your Data AI-Ready? Introducing the AI Readiness Score","contentTags":["snowflake-site:taxonomy/blog/engineering-blog/core-platform","snowflake-site:taxonomy/blog/engineering-blog/data-engineering"]},":items":{"root":{"columnCount":12,"gridClassNames":"aem-Grid aem-Grid--12 aem-Grid--default--12","columnClassNames":{"experiencefragment-banner":"aem-GridColumn aem-GridColumn--default--12","experiencefragment-sub-header":"aem-GridColumn aem-GridColumn--default--12","experiencefragment-pre-footer":"aem-GridColumn aem-GridColumn--default--12","experiencefragment-header":"aem-GridColumn aem-GridColumn--default--12","markup_editor-table":"aem-GridColumn aem-GridColumn--default--12","responsivegrid":"aem-GridColumn aem-GridColumn--default--12","experiencefragment-footer":"aem-GridColumn aem-GridColumn--default--12","markup_editor":"aem-GridColumn aem-GridColumn--default--12","container_47873732":"aem-GridColumn aem-GridColumn--default--12"},":items":{"experiencefragment-banner":{"id":"experiencefragment-b3de5a1d5d","localizedFragmentVariationPath":"/content/experience-fragments/snowflake-site/language-masters/en/site/pushdown-banner/pushdown-banner-blank/jcr:content","configured":true,"xfModelPath":"/content/experience-fragments/snowflake-site/language-masters/en/site/pushdown-banner/pushdown-banner-blank.xfmodel.json",":type":"snowflake-site/components/experiencefragment"},"experiencefragment-header":{"id":"experiencefragment-77caf108a1","localizedFragmentVariationPath":"/content/experience-fragments/snowflake-site/language-masters/en/site/mega-nav-header/master/jcr:content","configured":true,"xfModelPath":"/content/experience-fragments/snowflake-site/language-masters/en/site/mega-nav-header/master.xfmodel.json","languageNavPath":"/content/snowflake-site/global/en/blog/engineering/ai-readiness-score-data-framework0.languagenav.json",":type":"snowflake-site/components/experiencefragment","appliedCssClassNames":"snowflake-sticky-nav-host"},"experiencefragment-sub-header":{"id":"experiencefragment-ad80c07b28","localizedFragmentVariationPath":"/content/experience-fragments/snowflake-site/language-masters/en/site/sub-navigation/engineering-blog-sub-nav/jcr:content","configured":true,"xfModelPath":"/content/experience-fragments/snowflake-site/language-masters/en/site/sub-navigation/engineering-blog-sub-nav.xfmodel.json",":type":"snowflake-site/components/experiencefragment"},"responsivegrid":{"columnCount":12,"gridClassNames":"aem-Grid aem-Grid--12 aem-Grid--default--12","columnClassNames":{"container_breadcrumb":"aem-GridColumn aem-GridColumn--default--12","container_main_content":"aem-GridColumn aem-GridColumn--default--12"},":items":{"container_breadcrumb":{"layout":"RESPONSIVE_GRID","columnCount":12,"gridClassNames":"aem-Grid aem-Grid--12 aem-Grid--default--12","columnClassNames":{"breadcrumb":"aem-GridColumn aem-GridColumn--default--12"},"id":"blog-page-breadcrumb-indentation",":type":"snowflake-site/components/container",":items":{"breadcrumb":{"id":"breadcrumb-3646f2a411","breadcrumbItems":[{"title":"Blog","path":"/en/blog/engineering/","active":false},{"title":"Data Engineering","path":"/en/blog/engineering/data-engineering/","active":false},{"title":"Is Your Data AI-Ready? Introducing the AI Readiness Score","path":"/en/blog/engineering/ai-readiness-score-data-framework0/","active":false}],":type":"snowflake-site/components/blog/breadcrumb"}},":itemsOrder":["breadcrumb"],"appliedCssClassNames":"snowflake-container"},"container_main_content":{"layout":"RESPONSIVE_GRID","columnCount":12,"gridClassNames":"aem-Grid aem-Grid--12 aem-Grid--default--12","columnClassNames":{"flexible_column_container":"aem-GridColumn aem-GridColumn--default--12","related_content":"aem-GridColumn aem-GridColumn--default--12"},"id":"main-content",":type":"snowflake-site/components/container",":items":{"flexible_column_container":{"id":"flexible-column-container-2b7437c398","propertiesId":"snowflake-blog-template-main-container","type":"2-column-60-40","alignColumns":"top","containerMaxWidth":"extra-large","topPadding":"none","bottomPadding":"none","spaceBetween":"none","reverseOnMobile":true,"carouselOnMobile":false,"backgroundImageOption":"none","flexible_column_content_container_1":{"layout":"SIMPLE","id":"container-e5165d8a8f",":type":"snowflake-site/components/flexible-column-container/flexible-column-content-container",":items":{"container_hero":{"layout":"RESPONSIVE_GRID","columnCount":12,"gridClassNames":"aem-Grid aem-Grid--12 aem-Grid--default--12","columnClassNames":{"blog_hero":"aem-GridColumn aem-GridColumn--default--12"},"id":"container-e0cb86cab0",":type":"snowflake-site/components/container",":items":{"blog_hero":{"id":"blog-hero-d31bc414e4","linkedInShareUrl":"https://www.linkedin.com/shareArticle?mini=true&url=https%3A%2F%2Fwww.snowflake.com%2Fcontent%2Fsnowflake-site%2Fglobal%2Fen%2Fblog%2Fengineering%2Fai-readiness-score-data-framework0&title=Is+Your+Data+AI-Ready%3F+Introducing+the+AI+Readiness+Score","twitterShareUrl":"https://x.com/intent/post?url=https%3A%2F%2Fwww.snowflake.com%2Fcontent%2Fsnowflake-site%2Fglobal%2Fen%2Fblog%2Fengineering%2Fai-readiness-score-data-framework0&text=Is+Your+Data+AI-Ready%3F+Introducing+the+AI+Readiness+Score","facebookShareUrl":"https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fwww.snowflake.com%2Fcontent%2Fsnowflake-site%2Fglobal%2Fen%2Fblog%2Fengineering%2Fai-readiness-score-data-framework0","showClaude":true,"showChatGpt":true,"authors":[{"authorCta":{"id":"button-62e878af52","showOutboundIcon":false,"buttonLink":{"valid":true,"url":"/en/blog/authors/si-peng/"},"linkTargetContentType":"DOCUMENT_LEARN",":type":"snowflake-site/components/button","linkType":"SNOWFLAKE_INTERNAL","text":"Si Peng"}},{"authorCta":{"id":"button-7d0e296508","showOutboundIcon":false,"buttonLink":{"valid":true,"url":"/en/blog/authors/derenik-haghverdian/"},"linkTargetContentType":"DOCUMENT_LEARN",":type":"snowflake-site/components/button","linkType":"SNOWFLAKE_INTERNAL","text":"Derenik Haghverdian"}}],"image":{"id":"image-54a09e7f3b","height":"720","src":"https://www.snowflake.com/adobe/dynamicmedia/deliver/dm-aid--85d72614-270b-4273-9e68-6bb4ddc3a612/sf-eng-blog-ml-3.png?quality=85&preferwebp=true","lazyEnabled":true,"width":"1680",":type":"snowflake-site/components/image"},"timeToRead":"7","publicationDate":"JUL 31, 2026","tag":{"tagText":"Data Engineering","tagColor":"#29B5E8"},"title":{"lines":["Is Your Data AI-Ready? Introducing the AI Readiness Score"],"type":"heading2",":type":"snowflake-site/components/title-v2"},":type":"snowflake-site/components/blog/blog-hero"}},":itemsOrder":["blog_hero"]},"responsivegrid_content":{"columnCount":12,"gridClassNames":"aem-Grid aem-Grid--12 aem-Grid--default--12","columnClassNames":{"blog_text_597832873":"aem-GridColumn aem-GridColumn--default--12","image":"aem-GridColumn aem-GridColumn--default--12","blog_text_833094519":"aem-GridColumn aem-GridColumn--default--12","blog_text_88865320":"aem-GridColumn aem-GridColumn--default--12","image_368620585":"aem-GridColumn aem-GridColumn--default--12","blog_text_452164388":"aem-GridColumn aem-GridColumn--default--12","blog_text_806130561":"aem-GridColumn aem-GridColumn--default--12","code_snippet_344287243":"aem-GridColumn aem-GridColumn--default--12","code_snippet":"aem-GridColumn aem-GridColumn--default--12","blog_text":"aem-GridColumn aem-GridColumn--default--12","blog_text_279196812":"aem-GridColumn aem-GridColumn--default--12","blog_text_1568132209":"aem-GridColumn aem-GridColumn--default--12","image_1612975937":"aem-GridColumn aem-GridColumn--default--12","image_843236320":"aem-GridColumn aem-GridColumn--default--12","blog_text_402199636":"aem-GridColumn aem-GridColumn--default--12","blog_text_429968754":"aem-GridColumn aem-GridColumn--default--12","blog_text_1997976196":"aem-GridColumn aem-GridColumn--default--12"},"appliedCssClassNames":"snowflake-layout-container-inner-padding-small",":items":{"blog_text":{"id":"blog-text-9fe8cb623e","text":"\u003Cp\u003E\u003Cb\u003ETL;DR:\u003C/b\u003E\u003C/p\u003E\r\n\u003Cp\u003EA good data foundation that is ready for use by AI agents is essential when it comes to getting more accurate and efficient AI answers for your business questions. The AI Readiness Score measures how prepared your data is for AI-powered features like Cortex Code (CoCo) and CoWork, and provides concrete recommendations on how to improve your readiness. Run \u003Ccode\u003E/ai-readiness-score\u003C/code\u003E in CoCo CLI or Snowsight in Cloud agents mode to try it.\u003C/p\u003E\r\n\u003Ch2\u003ETwo factors that lead to AI readiness\u003C/h2\u003E\r\n\u003Cp\u003EWe found that AI readiness boils down to two measurable dimensions:\u003C/p\u003E\r\n\u003Cp\u003E\u003Cb\u003E1. Are there good data assets for AI to use?\u003C/b\u003E We call these \u003Ci\u003Econsumption-ready (CR) tables\u003C/i\u003E, the analyst-facing data sets that are actively queried, return results quickly, and contain fresh data. We identify them from behavioral signals: read volume, user diversity, BI tool consumption, query latency and data freshness.\u003C/p\u003E\r\n\u003Cp\u003E\u003Cb\u003E2. Can AI find those tables and query them correctly?\u003C/b\u003E This is where \u003Ci\u003Esemantic views\u003C/i\u003E come in. Semantic views encode the metadata AI needs to query your data correctly: primary keys, table relationships, business metrics, column descriptions and verified example queries. Without this semantic layer, AI is more likely to be guessing the table names, column names and the way to conduct joins and aggregations.\u003C/p\u003E\r\n\u003Cp\u003EA high AI Readiness score means both conditions are satisfied: the right tables exist \u003Ci\u003Eand\u003C/i\u003E AI has the structured metadata to use them correctly.\u003C/p\u003E\r\n\u003Ch2\u003EHow the score works\u003C/h2\u003E\r\n\u003Cp\u003EThe AI Readiness Score combines three subdimensions:\u003C/p\u003E\r\n","richText":true,":type":"snowflake-site/components/blog/blog-text"},"blog_text_429968754":{"id":"blog-text-2404960f16","text":"\u003Ctable\u003E\r\n\u003Cthead\u003E\u003Ctr\u003E\u003Cth\u003EDimension\u003C/th\u003E\r\n\u003Cth\u003EWhat it measures\u003C/th\u003E\r\n\u003C/tr\u003E\u003C/thead\u003E\u003Ctbody\u003E\u003Ctr\u003E\u003Ctd\u003E\u003Cb\u003EDemand Coverage\u003C/b\u003E\u003C/td\u003E\r\n\u003Ctd\u003EWhat percentage of your analytical queries land on consumption-ready tables (vs. raw/pipeline tables)?\u003C/td\u003E\r\n\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003E\u003Cb\u003ESemantic View Coverage\u003C/b\u003E\u003C/td\u003E\r\n\u003Ctd\u003EWhat fraction of your consumption-ready tables have at least one semantic view defined over them?\u003C/td\u003E\r\n\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003E\u003Cb\u003ESemantic View Quality\u003C/b\u003E\u003C/td\u003E\r\n\u003Ctd\u003EHow complete are your semantic views — do they include primary keys, relationships, metrics, descriptions, and verified queries?\u003C/td\u003E\r\n\u003C/tr\u003E\u003C/tbody\u003E\u003C/table\u003E\r\n","richText":true,":type":"snowflake-site/components/blog/blog-text"},"blog_text_88865320":{"id":"blog-text-3347062cf8","text":"\u003Cp\u003EThe composite score combines demand coverage and SV readiness (itself a combination of coverage and quality) into a single 0–100 score. The scoring is designed so that a zero in any dimension — say, no semantic views at all — pulls the overall score down sharply.\u003C/p\u003E\r\n\u003Cp\u003EFor consumption-ready table identification, we score tables on four behavioral dimensions (activity, consumption breadth, speed and freshness) and require that \u003Ci\u003Eall\u003C/i\u003E conditions are reasonably satisfied. A table with millions of reads but 10-minute query times still won't qualify — the scoring penalizes any single weak dimension rather than letting strong dimensions mask it.\u003C/p\u003E\r\n\u003Cp\u003ESemantic view quality is assessed across nine signals that measure how much structured metadata AI has to work with — from basic properties like primary keys and relationships to richer signals like verified example queries and descriptive column comments.\u003C/p\u003E\r\n\u003Ch2\u003EHow to improve your data\u003C/h2\u003E\r\n\u003Cp\u003EA score alone isn't useful. The framework classifies each schema's \u003Ci\u003Eprimary gap\u003C/i\u003E — the single dimension most limiting its AI readiness — and generates prioritized recommendations:\u003C/p\u003E\r\n","richText":true,":type":"snowflake-site/components/blog/blog-text"},"blog_text_279196812":{"id":"blog-text-3c01c0465c","text":"\u003Ctable\u003E\r\n\u003Cthead\u003E\u003Ctr\u003E\u003Cth\u003EPrimary Gap\u003C/th\u003E\r\n\u003Cth\u003EWhat it means\u003C/th\u003E\r\n\u003Cth\u003EAction\u003C/th\u003E\r\n\u003C/tr\u003E\u003C/thead\u003E\u003Ctbody\u003E\u003Ctr\u003E\u003Ctd\u003E\u003Cb\u003EBuild CR tables\u003C/b\u003E\u003C/td\u003E\r\n\u003Ctd\u003EMost analytical traffic hits raw or pipeline tables — AI has no suitable targets.\u003C/td\u003E\r\n\u003Ctd\u003EImprove table design in high-traffic schemas. For example, create pipelines to create aggregated tables.\u003C/td\u003E\r\n\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003E\u003Cb\u003ECreate semantic views\u003C/b\u003E\u003C/td\u003E\r\n\u003Ctd\u003EConsumption-ready tables exist but AI can't reason over them effectively.\u003C/td\u003E\r\n\u003Ctd\u003EBuild your first semantic views on the highest-read tables. That helps AI to query from the right table with the right columns.\u003C/td\u003E\r\n\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003E\u003Cb\u003EExpand SV coverage\u003C/b\u003E\u003C/td\u003E\r\n\u003Ctd\u003ESome semantic views exist but most CR tables remain uncovered.\u003C/td\u003E\r\n\u003Ctd\u003EExtend semantic view coverage on the most frequently queried tables that are not yet covered.\u003C/td\u003E\r\n\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003E\u003Cb\u003EImprove SV quality\u003C/b\u003E\u003C/td\u003E\r\n\u003Ctd\u003ESemantic views are in place but structurally incomplete.\u003C/td\u003E\r\n\u003Ctd\u003EEnrich the existing semantic views. Add join relationships between tables, define business metrics (for example, SUM(revenue), COUNT(DISTINCT user_id)), and add verified queries: curated Q&amp;A examples that directly validate AI output.\u003C/td\u003E\r\n\u003C/tr\u003E\u003C/tbody\u003E\u003C/table\u003E\r\n","richText":true,":type":"snowflake-site/components/blog/blog-text"},"blog_text_833094519":{"id":"blog-text-52e9d795af","text":"\u003Cp\u003EEach recommendation surfaces the specific schemas, tables or semantic views to act on, ranked by analytical read volume so you tackle the highest-impact items first.\u003C/p\u003E\r\n\u003Ch2\u003EDoes it work?\u003C/h2\u003E\r\n\u003Cp\u003EWe tested the framework on our own internal analytics database — dozens of schemas, thousands of tables and the relative rankings align with the team's understanding of these schemas.\u003C/p\u003E\r\n\u003Cp\u003EOne schema, containing SaaS connector metrics, initially scored 39/100. It had seven consumption-ready tables with strong analytical demand but zero semantic views. The framework's top recommendation was straightforward: create semantic views for these tables. After building SVs covering six of the seven tables, the score jumped to 82/100, along with better experiences using AI agents to answer business questions.\u003C/p\u003E\r\n\u003Ch2\u003ETry it yourself\u003C/h2\u003E\r\n\u003Cp\u003EThe AI Readiness Score is available as a CoCo skill. See \u003Ca href=\"https://docs.snowflake.com/en/user-guide/cortex-code/bundled-skills#ai-readiness-score\" target=\"_blank\" rel=\"noopener noreferrer\"\u003Ehere\u003C/a\u003E for more details.\u003C/p\u003E\r\n\u003Cp\u003ESkills are reusable workflows that extend CoCo's capabilities; invoke them with a slash command. Run it from the CLI or Snowsight in Cloud agents mode with \u003Ccode\u003E/ai-readiness-score\u003C/code\u003E.\u003C/p\u003E\r\n","richText":true,":type":"snowflake-site/components/blog/blog-text"},"image":{"id":"image-621c95ae01","height":"354","src":"https://www.snowflake.com/adobe/dynamicmedia/deliver/dm-aid--3e9f6026-1d12-4bbd-a496-428db17522c1/figure-1.-is-your-data-ai-ready.png?quality=85&preferwebp=true","alt":"Figure 1","lazyEnabled":true,"width":"1168","title":"Figure 1",":type":"snowflake-site/components/image"},"blog_text_1568132209":{"id":"blog-text-ccb1ede791","text":"\u003Cp\u003EOnce the skill is invoked, it will first ask you to choose how much query history to scan, from a quick 10% sample for a fast preview to a full scan for maximum accuracy.\u003C/p\u003E\r\n\u003Cp\u003EIt then scans your \u003Ccode\u003Eaccount_usage schema\u003C/code\u003E to identify all actively read tables, scores each one for consumption readiness, and evaluates semantic views. Runtime scales with your account's query activity. In our internal testing on a large, active development account (~43,000 tables), this was completed in 30–40 minutes on a Medium warehouse; a 2X-Large warehouse reduced that by roughly 15%. Accounts with lower query volumes should see proportionally shorter runtimes.\u003C/p\u003E\r\n\u003Cp\u003ENote that you need a role that has access to the views in \u003Ccode\u003Eaccount_usage\u003C/code\u003E. Also, part of the semantic view metadata (verified queries) is retrieved using \u003Ccode\u003ESHOW\u003C/code\u003E commands, which means the results are role-dependent. Users with broader privileges will see more semantic views and get a more complete picture of their account's readiness.\u003C/p\u003E\r\n\u003Cp\u003EWhen the analysis is done, the skill produces a self-contained HTML report that you can share with your team. Results are cached so subsequent runs complete quickly.\u003C/p\u003E\r\n\u003Cp\u003EWe'd love to hear how your account scores and which improvements move the needle most for your team.\u003C/p\u003E\r\n\u003Ch2\u003EExample output\u003C/h2\u003E\r\n\u003Cp\u003EBelow is an example report generated by the skill. The Score Breakdown section shows your composite score decomposed into its two primary dimensions, Demand Coverage and Semantic View Readiness, with SV Readiness further broken down into Coverage and Quality subscores, so you can see exactly where the gap is.\u003C/p\u003E\r\n\u003Cp\u003EThe Industry Comparison chart plots your account (blue) against the distribution of industry medians (gray), giving you a sense of where you stand relatively across each dimension.\u003C/p\u003E\r\n\u003Cp\u003EFinally, the Opportunities table is where the report gets actionable: It lists the specific schemas and tables ranked by analytical read volume, along with the gap type and a recommended action. In this example, the top opportunities are schemas with high read traffic but low CR table coverage — meaning most of those analytical queries are landing on tables that aren't suitable for AI, and that's where to focus first.\u003C/p\u003E\r\n","richText":true,":type":"snowflake-site/components/blog/blog-text"},"image_1612975937":{"id":"image-0848eb5c9f","height":"540","src":"https://www.snowflake.com/adobe/dynamicmedia/deliver/dm-aid--76c38243-3468-4a80-b6dc-f2b7d0a1f1f2/figure-2.-is-your-data-ai-ready.png?quality=85&preferwebp=true","alt":"Figure 2. Is Your Data AI-Ready","lazyEnabled":true,"width":"1536","title":"Figure 2. Is Your Data AI-Ready",":type":"snowflake-site/components/image"},"image_843236320":{"id":"image-7ec2fb58c9","height":"1044","src":"https://www.snowflake.com/adobe/dynamicmedia/deliver/dm-aid--e50e4508-577b-4f98-8f26-3fa313d01ce6/figure-3.-is-your-data-ai-ready.png?quality=85&preferwebp=true","alt":"Figure 3. Is Your Data AI-Ready","lazyEnabled":true,"width":"1536","title":"Figure 3. Is Your Data AI-Ready",":type":"snowflake-site/components/image"},"image_368620585":{"id":"image-d56d99cffc","height":"810","src":"https://www.snowflake.com/adobe/dynamicmedia/deliver/dm-aid--3dbb6949-aecd-4d84-9a2d-4cbdac7778d7/figure-4.-is-your-data-ai-ready.png?quality=85&preferwebp=true","alt":"Figure 4. Is Your Data AI-Ready","lazyEnabled":true,"width":"1476","title":"Figure 4. Is Your Data AI-Ready",":type":"snowflake-site/components/image"},"blog_text_452164388":{"id":"blog-text-f26b209066","text":"\u003Ch2\u003EAppendix\u003C/h2\u003E\r\n\u003Ch3\u003EData sources\u003C/h3\u003E\r\n\u003Cp\u003EThe skill queries the following views from \u003Ccode\u003ESNOWFLAKE.ACCOUNT_USAGE\u003C/code\u003E:\u003C/p\u003E\r\n","richText":true,":type":"snowflake-site/components/blog/blog-text"},"blog_text_806130561":{"id":"blog-text-91ba4d3be7","text":"\u003Ctable\u003E\r\n\u003Cthead\u003E\u003Ctr\u003E\u003Cth\u003EView\u003C/th\u003E\r\n\u003Cth\u003EUsed for\u003C/th\u003E\r\n\u003C/tr\u003E\u003C/thead\u003E\u003Ctbody\u003E\u003Ctr\u003E\u003Ctd\u003E\u003Ccode\u003EACCESS_HISTORY\u003C/code\u003E\u003C/td\u003E\r\n\u003Ctd\u003EPer-table read counts, read-only detection, distinct user counts\u003C/td\u003E\r\n\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003E\u003Ccode\u003EQUERY_HISTORY\u003C/code\u003E\u003C/td\u003E\r\n\u003Ctd\u003EQuery type, execution time, error filtering, warehouse detection\u003C/td\u003E\r\n\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003E\u003Ccode\u003ESESSIONS\u003C/code\u003E\u003C/td\u003E\r\n\u003Ctd\u003EClient application name (BI tool classification)\u003C/td\u003E\r\n\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003E\u003Ccode\u003ETABLES\u003C/code\u003E\u003C/td\u003E\r\n\u003Ctd\u003EDDL freshness (\u003Ccode\u003Elast_altered\u003C/code\u003E)\u003C/td\u003E\r\n\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003E\u003Ccode\u003ESEMANTIC_VIEWS\u003C/code\u003E\u003C/td\u003E\r\n\u003Ctd\u003EList of live semantic views\u003C/td\u003E\r\n\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003E\u003Ccode\u003ESEMANTIC_TABLES\u003C/code\u003E\u003C/td\u003E\r\n\u003Ctd\u003ETable-level signals: primary keys, unique keys, distinct ranges, synonyms\u003C/td\u003E\r\n\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003E\u003Ccode\u003ESEMANTIC_DIMENSIONS\u003C/code\u003E\u003C/td\u003E\r\n\u003Ctd\u003EDimension-level synonyms and comments\u003C/td\u003E\r\n\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003E\u003Ccode\u003ESEMANTIC_FACTS\u003C/code\u003E\u003C/td\u003E\r\n\u003Ctd\u003EFact-level synonyms and comments\u003C/td\u003E\r\n\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003E\u003Ccode\u003ESEMANTIC_METRICS\u003C/code\u003E\u003C/td\u003E\r\n\u003Ctd\u003EMetric existence, synonyms, and comments\u003C/td\u003E\r\n\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003E\u003Ccode\u003ESEMANTIC_RELATIONSHIPS\u003C/code\u003E\u003C/td\u003E\r\n\u003Ctd\u003ERelationship presence between tables\u003C/td\u003E\r\n\u003C/tr\u003E\u003C/tbody\u003E\u003C/table\u003E\r\n","richText":true,":type":"snowflake-site/components/blog/blog-text"},"blog_text_597832873":{"id":"blog-text-d6e70f188e","text":"\u003Cp\u003EVerified query counts are retrieved via \u003Ccode\u003ESHOW SEMANTIC VIEWS\u003C/code\u003E commands, which are role-scoped: users with different roles will see different semantic views and may get different verified query counts. For the most accurate results, run the skill with a role that has visibility into all semantic views in your account.\u003C/p\u003E\r\n\u003Ch3\u003EImproving a semantic view: before and after\u003C/h3\u003E\r\n\u003Cp\u003EThe SV quality score is built from nine signals. Here is a synthetic example showing how to go from a minimal semantic view to a well-enriched one.\u003C/p\u003E\r\n\u003Cp\u003E\u003Cb\u003EBefore — minimal, low-quality score:\u003C/b\u003E\u003C/p\u003E\r\n","richText":true,":type":"snowflake-site/components/blog/blog-text"},"code_snippet":{"id":"code-snippet-8ce04af592","language":"sql","codeSnippet":"CREATE OR REPLACE SEMANTIC VIEW mydb.analytics.orders_sv\r\n  TABLES (\r\n    orders AS mydb.analytics.fact_orders\r\n  )\r\n  DIMENSIONS (\r\n    orders.order_date AS order_date,\r\n    orders.status     AS status,\r\n    orders.customer_id AS customer_id\r\n  )\r\n  FACTS (\r\n    orders.revenue AS revenue\r\n  );","multiLine":true,":type":"snowflake-site/components/code-snippet"},"blog_text_1997976196":{"id":"blog-text-b37c1c61c8","text":"\u003Cp\u003EThis view scores low: no primary key, no relationships, no metrics, no synonyms, no verified queries and no column descriptions.\u003C/p\u003E\r\n\u003Cp\u003E\u003Cb\u003EAfter — enriched, high-quality score:\u003C/b\u003E\u003C/p\u003E\r\n","richText":true,":type":"snowflake-site/components/blog/blog-text"},"code_snippet_344287243":{"id":"code-snippet-656f29df30","language":"sql","codeSnippet":"CREATE OR REPLACE SEMANTIC VIEW mydb.analytics.orders_sv\r\n  TABLES (\r\n    orders    AS mydb.analytics.fact_orders\r\n              PRIMARY KEY (order_id)                         -- +1: primary key\r\n              WITH SYNONYMS = ('transactions', 'purchases')  -- +1: synonyms\r\n              COMMENT = 'One row per customer order',\r\n    customers AS mydb.analytics.dim_customers\r\n              PRIMARY KEY (customer_id)\r\n  )\r\n  RELATIONSHIPS (\r\n    -- Links orders to customers so AI can join across tables  -- +1: relationships\r\n    orders_to_customers AS orders(customer_id) REFERENCES customers(customer_id)\r\n  )\r\n  DIMENSIONS (\r\n    orders.order_date  AS order_date\r\n                       WITH SYNONYMS = ('date', 'purchase date')\r\n                       COMMENT = 'Date the order was placed',\r\n    orders.status      AS status\r\n                       COMMENT = 'Order status: pending, shipped, delivered, cancelled',\r\n                       -- +1: distinct ranges (values hint for filters)\r\n    orders.customer_id AS customer_id\r\n                       COMMENT = 'Foreign key to dim_customers'\r\n  )\r\n  FACTS (\r\n    orders.revenue AS revenue\r\n                   COMMENT = 'Order revenue in USD'\r\n  )\r\n  METRICS (\r\n    -- Pre-defined aggregations AI uses instead of guessing  -- +1: metrics\r\n    orders.total_revenue  AS SUM(orders.revenue),\r\n    orders.order_count    AS COUNT(orders.order_id),\r\n    orders.unique_customers AS COUNT(DISTINCT orders.customer_id)\r\n  )\r\n  AI_VERIFIED_QUERIES (                                      -- +2: verified queries (highest weight)\r\n    total_revenue_this_month AS (\r\n      QUESTION 'What is total revenue this month?'\r\n      SQL 'SELECT SUM(revenue) FROM mydb.analytics.fact_orders\r\n           WHERE DATE_TRUNC(''month'', order_date) = DATE_TRUNC(''month'', CURRENT_DATE())'\r\n    ),\r\n    orders_by_status AS (\r\n      QUESTION 'How many orders are in each status?'\r\n      SQL 'SELECT status, COUNT(*) AS order_count\r\n           FROM mydb.analytics.fact_orders\r\n           GROUP BY status ORDER BY order_count DESC'\r\n    )\r\n  );","multiLine":true,":type":"snowflake-site/components/code-snippet"},"blog_text_402199636":{"id":"blog-text-2e9dfabbd5","text":"\u003Cp\u003EEach addition maps to a quality signal: primary key, synonyms, relationships, metrics, verified queries, and column comments all contribute to the score. Of these, \u003Cb\u003Everified queries carry the most weight\u003C/b\u003E — they are curated question-and-answer pairs that directly validate AI output. Even two or three verified queries per semantic view meaningfully improve the quality score.\u003C/p\u003E\r\n","richText":true,":type":"snowflake-site/components/blog/blog-text"}},":itemsOrder":["blog_text","blog_text_429968754","blog_text_88865320","blog_text_279196812","blog_text_833094519","image","blog_text_1568132209","image_1612975937","image_843236320","image_368620585","blog_text_452164388","blog_text_806130561","blog_text_597832873","code_snippet","blog_text_1997976196","code_snippet_344287243","blog_text_402199636"],":type":"wcm/foundation/components/responsivegrid"},"responsivegrid_premium_content_banner":{"columnCount":12,"gridClassNames":"aem-Grid aem-Grid--12 aem-Grid--default--12","columnClassNames":{},"appliedCssClassNames":"snowflake-responsive-component-top-padding-medium",":items":{},":itemsOrder":[],":type":"wcm/foundation/components/responsivegrid"},"container_author_chip":{"layout":"RESPONSIVE_GRID","columnCount":12,"gridClassNames":"aem-Grid aem-Grid--12 aem-Grid--default--12","columnClassNames":{"author_chip":"aem-GridColumn aem-GridColumn--default--12"},"id":"container-62be1ed7fa",":type":"snowflake-site/components/container",":items":{"author_chip":{"id":"author-chip-09566b5cad","title":{"id":"title","type":"heading2","lines":["Learn more about the authors"],":type":"snowflake-site/components/title-v2"},"authors":[{"authorCta":{"id":"button-62e878af52","showOutboundIcon":false,"buttonLink":{"valid":true,"url":"/en/blog/authors/si-peng/"},"linkTargetContentType":"DOCUMENT_LEARN",":type":"snowflake-site/components/button","linkType":"SNOWFLAKE_INTERNAL","text":"Si Peng"},"authorTitle":"Staff Data Scientist"},{"authorCta":{"id":"button-7d0e296508","showOutboundIcon":false,"buttonLink":{"valid":true,"url":"/en/blog/authors/derenik-haghverdian/"},"linkTargetContentType":"DOCUMENT_LEARN",":type":"snowflake-site/components/button","linkType":"SNOWFLAKE_INTERNAL","text":"Derenik Haghverdian"},"authorTitle":"Senior Data Scientist"}],":type":"snowflake-site/components/blog/author-chip"}},":itemsOrder":["author_chip"],"appliedCssClassNames":"snowflake-responsive-component-top-padding-medium"}},":itemsOrder":["container_hero","responsivegrid_content","responsivegrid_premium_content_banner","container_author_chip"]},"flexible_column_content_container_2":{"layout":"SIMPLE","id":"container-eac396c148",":type":"snowflake-site/components/flexible-column-container/flexible-column-content-container",":items":{"blog_table_of_content":{"id":"blog-table-of-content-b3fd9c7dd7",":type":"snowflake-site/components/blog/blog-table-of-content","tableOfContents":[]}},":itemsOrder":["blog_table_of_content"]},"isBlogPage":true,"isActiveTOC":false,":type":"snowflake-site/components/flexible-column-container"},"related_content":{"id":"related-content-d6fa4437fb","relatedContent":[],"isBlogPage":true,":type":"snowflake-site/components/blog/related-content"}},":itemsOrder":["flexible_column_container","related_content"],"appliedCssClassNames":"snowflake-container"}},":itemsOrder":["container_breadcrumb","container_main_content"],":type":"wcm/foundation/components/responsivegrid"},"container_47873732":{"additionalClasses":"section--blog-newsletter","layout":"RESPONSIVE_GRID","columnCount":12,"gridClassNames":"aem-Grid aem-Grid--12 aem-Grid--default--12","columnClassNames":{"flexible_column_cont":"aem-GridColumn aem-GridColumn--default--12"},"id":"container-dec269810f",":type":"snowflake-site/components/container",":items":{"flexible_column_cont":{"id":"flexible-column-container-0b5f606bc1","type":"1-column","alignColumns":"top","containerMaxWidth":"extra-large","topPadding":"small","bottomPadding":"none","spaceBetween":"small","reverseOnMobile":false,"carouselOnMobile":false,"propertiesCSSClasses":"section--blog-newsletter","backgroundImageOption":"none","flexible_column_content_container_1":{"layout":"SIMPLE","id":"container-a6597ac8a4",":type":"snowflake-site/components/flexible-column-container/flexible-column-content-container",":items":{"marketo_v2":{"id":"marketo-v2-1e229ecf70","marketoForm":{"hidden":null,"successUrl":null,"formId":"3320","edit":false,"script":null,"values":null},"title":{"id":"title","type":"heading3","lines":["Subscribe to our blog newsletter","Get the best, coolest and latest delivered to your inbox each week"],":type":"snowflake-site/components/title-v2"},"formConfigured":true,"marketoConfigured":true,"serverInstance":"252-RFO-227.mktoweb.com","munchkinId":"252-RFO-227",":type":"snowflake-site/components/form/marketo-v2"},"text":{"id":"text-d69db4030d","additionalClasses":"newsletter-disclaimer","text":"\u003Cp\u003EBy submitting this form, I understand Snowflake will process my personal information in accordance with their Privacy Notice.\u003C/p\u003E\r\n","richText":true,":type":"snowflake-site/components/text"}},":itemsOrder":["marketo_v2","text"]},"isBlogPage":true,"isActiveTOC":false,":type":"snowflake-site/components/flexible-column-container"}},":itemsOrder":["flexible_column_cont"],"appliedCssClassNames":"snowflake-container"},"experiencefragment-pre-footer":{"id":"experiencefragment-45a99d3054","localizedFragmentVariationPath":"/content/experience-fragments/snowflake-site/language-masters/en/site/get-started-pre-footer/get-started-pre-footer/jcr:content","configured":true,"xfModelPath":"/content/experience-fragments/snowflake-site/language-masters/en/site/get-started-pre-footer/get-started-pre-footer.xfmodel.json",":type":"snowflake-site/components/experiencefragment"},"markup_editor":{"id":"markup-editor-3d27c04a2b","title":"Page CSS","cssContent":"@media screen and (min-width:768px){.snowflake-blog-author-chip-wrapper{justify-content:flex-start}.snowflake-blog-related-content-on-blog-page{max-width:1408px;margin-left:auto;margin-right:auto}.snowflake-text{font-family:Lato,sans-serif;font-weight:400;font-size:16px;line-height:24px}}.section--blog-newsletter{max-width:none;width:100%;padding-left:0;padding-right:0;margin-left:0;margin-right:0;margin-bottom:0}.section--blog-newsletter .mktoField{background-color:transparent !important}.section--blog-newsletter\u003E.container{padding-left:0;padding-right:0}@media screen and (min-width:768px){.section--blog-newsletter\u003E.container{padding-left:0;padding-right:0}}.newsletter-disclaimer p{font-size:14px !important}.section--blog-newsletter .snowflake-marketo-form-container{margin-bottom:24px;background-color:#f6f9fa;gap:48px;box-shadow:none}.section--blog-newsletter .snowflake-title p.snowflake-title-line:first-child{font-family:Texta;font-size:24px;line-height:26px;font-weight:700;margin-bottom:4px}.section--blog-newsletter .snowflake-title p.snowflake-title-line{text-transform:none;font-family:\"Lato\",sans-serif;font-size:16px;line-height:24px;font-weight:normal}@media screen and (min-width:1024px){.section--blog-newsletter .snowflake-marketo-form-container{display:flex;justify-content:center}.section--blog-newsletter .snowflake-title .snowflake-title-line{text-align:left}.section--blog-newsletter .snowflake-marketo-form .mktoFormRow:has(\u003E input[type=\"hidden\"]){flex-grow:0}.section--blog-newsletter .snowflake-marketo-form{display:flex;width:50% !important}.section--blog-newsletter .snowflake-marketo-form .mktoButtonRow{flex-grow:0;width:auto !important;margin-left:0;margin-right:0}.section--blog-newsletter .snowflake-marketo-form .mktoFormRow{flex-grow:1}.section--blog-newsletter\u003E.container{padding-left:0;padding-right:0}.section--blog-newsletter .snowflake-marketo-form-title{width:50%;margin-bottom:0 !important}.section--blog-newsletter .center .snowflake-title{align-items:flex-start}}.snowflake-sub-navigation a.snowflake-sub-navigation-primary-link{width:auto !important}.snowflake-blog-hero{align-items:stretch !important}",":type":"snowflake-site/components/markup-editor","isGSAPEnabled":false},"markup_editor-table":{"id":"markup-editor-8e1163e393","title":"Table Styling CSS","cssContent":"#snowflake-blog-template-main-container table{width:100%;background-color:var(--ui-background-01);border-collapse:collapse;border:2px solid var(--ui-background-09);font-family:'Lato',sans-serif;color:var(--ui-background-09)}#snowflake-blog-template-main-container table thead{background-color:var(--ui-01)}#snowflake-blog-template-main-container table th,#snowflake-blog-template-main-container table td{border:2px solid var(--ui-background-09);padding:var(--spacing-01)}",":type":"snowflake-site/components/markup-editor","isGSAPEnabled":false},"experiencefragment-footer":{"id":"experiencefragment-06dd947d7d","localizedFragmentVariationPath":"/content/experience-fragments/snowflake-site/language-masters/en/site/footer/master/jcr:content","configured":true,"xfModelPath":"/content/experience-fragments/snowflake-site/language-masters/en/site/footer/master.xfmodel.json",":type":"snowflake-site/components/experiencefragment"}},":itemsOrder":["experiencefragment-banner","experiencefragment-header","experiencefragment-sub-header","responsivegrid","container_47873732","experiencefragment-pre-footer","markup_editor","markup_editor-table","experiencefragment-footer"],":type":"wcm/foundation/components/responsivegrid"}},":itemsOrder":["root"],"locale":"en"}
  