Skip to content
Home › SQL Comparisons › Unity Catalog vs Snowflake Horizon
Comparison · Data Catalogs & Governance

Unity Catalog vs Snowflake Horizon

Databricks Unity Catalog and Snowflake Horizon Catalog are the governance layers built into the two big data platforms. Both provide fine-grained access policies, column-level lineage, classification, auditing and an Iceberg REST Catalog API for external engines. Neither is sold separately: the real choice is usually Databricks or Snowflake, and the catalog details matter most when you share Iceberg data between engines.

Last verified November 2026. Versions checked: Open source Unity Catalog 0.7.0. Licensing and features change; check the official sources for the latest details.

Quick verdict

Short answer

If you run Databricks, use Unity Catalog: it is included with the Premium and Enterprise tiers and governs tables, volumes, functions and models for every workload, and there is also an Apache 2.0 open source server. If you run Snowflake, use Horizon Catalog: it is already in the account, but masking, row access policies, classification, access history and lineage need Enterprise Edition or higher. If you run both, plan the Iceberg paths carefully: each platform can expose its own managed Iceberg tables to external engines for read and write, but Databricks reads Horizon-managed tables only as read-only foreign tables, and Snowflake lists Unity Catalog as a client that is not announced for its Iceberg REST API.

How we know: This comparison is research-based: features, edition and tier requirements, Iceberg interoperability and billing terms were checked on 7 November 2026 against Databricks and Snowflake documentation, the Unity Catalog product page, the open source Unity Catalog repository and Snowflake's Service Consumption Table. We have not administered either catalog, so nothing here is a measured result.

Unity Catalog is the governance layer of Databricks. It organises tables, views, volumes, functions, models and services in a catalog.schema.object namespace, and combines privileges, attribute-based policies, row filters, column masks and workspace bindings with automatic lineage, an audit log system table and data classification. Workspaces created after 8 November 2023 have it enabled automatically. Separately, Unity Catalog is an Apache 2.0 open source server in the LF AI & Data Foundation (sandbox stage); version 0.7.0 shipped on 13 October 2026, and its README says the APIs are still evolving.

Snowflake Horizon Catalog is the set of catalog, discovery and governance capabilities inside Snowflake. It covers object tagging, sensitive data classification, masking and row access policies, access history, column-level lineage, data quality monitoring with data metric functions, the Trust Center, an Internal Marketplace and semantic views for AI agents. It integrates Apache Polaris and exposes the Horizon Iceberg REST Catalog API, through which external engines can read and write Snowflake-managed Iceberg tables; Snowflake documents both read and write as generally available.

Platform first, catalog second. These catalogs come with their platforms, so for the wider decision see Snowflake vs Databricks. Note that that page predates Snowflake's write support for external engines; the Iceberg section below reflects the November 2026 documentation.

Side by side

AspectUnity CatalogSnowflake Horizon Catalog
What it is Governance layer built into Databricks; also an open source server Catalog and governance feature set built into Snowflake
Licensing Included with Databricks Premium and Enterprise tiers; open source edition Apache 2.0 Included in Snowflake; many governance features need Enterprise Edition or higher
Objects governed Tables, views, volumes (files), functions, models and services Snowflake objects, including Iceberg tables; data products in the Internal Marketplace
Fine-grained access Privileges, ABAC policies, row filters, column masks, workspace bindings RBAC plus masking, row access, aggregation and projection policies (Enterprise or higher)
Lineage Automatic, column level, across notebooks, jobs, SQL, models and dashboards Column level in Snowsight (Enterprise or higher)
Classification and auditing Automatic data classification; audit log system table Sensitive data classification and access history (Enterprise or higher)
Data quality Data quality monitoring with profiling and alerts Data metric functions and quality monitoring (Enterprise or higher)
Iceberg REST for external engines Read and write access to Unity Catalog Iceberg tables; views not readable Read and write (GA) for Snowflake-managed Iceberg v2 and v3 tables; native Snowflake tables not readable
Using the other platform's catalog Foreign Iceberg tables from Snowflake Horizon via Lakehouse Federation, read-only Unity Catalog listed as not announced as a client of the Horizon Iceberg REST API
Federation of other catalogs Snowflake, BigQuery and AWS Glue catalogs federated without copying data Catalog-linked databases and external catalogs such as AWS Glue and OneLake
Extra charges No separate licence; you pay for compute and storage in DBUs Horizon Iceberg REST API calls at 0.5 credit per million (Cloud Services), billing scheduled from the second half of 2026
Business glossary and stewardship Not documented as a glossary; tags, comments and ownership Not documented as a glossary; semantic views and tags

Key differences

Licensing and editions

Unity Catalog needs no separate licence. Databricks states that it is included with the Premium and Enterprise tiers and that you pay only for the compute and storage you consume. On Azure, new Azure Databricks workspaces must be Premium tier, so in practice every new Databricks workspace can use it. Some compute-heavy features run on serverless compute and are billed as usage.

Horizon Catalog is also part of the platform, but its governance controls depend on the Snowflake edition. Masking policies, row access policies, data classification, access history, aggregation and projection policies, data metric functions and lineage all need Enterprise Edition or higher, while object tagging and the Horizon Iceberg REST Catalog API are available in Standard. As one dated example, the Service Consumption Table effective 4 November 2026 lists On Demand credits in AWS US East at USD 2.00 for Standard and USD 3.00 for Enterprise, so the governance features effectively come with a higher credit price. In our view, Databricks makes its governance layer available to more of its customers by default, while on Snowflake you should confirm your edition before planning a governance rollout.

Access policies: column masks on both platforms

Both catalogs implement column masking as a policy object attached to a column, and both can apply it to tables that other engines reach through Iceberg REST. In Unity Catalog, a mask is a SQL function set on the column; ABAC policies can apply masks and row filters based on tags across many tables.

-- Databricks SQL (Unity Catalog): mask an email column for non-members
CREATE FUNCTION main.sec.email_mask(email STRING)
  RETURN CASE WHEN is_account_group_member('pii_readers') THEN email ELSE '***' END;
ALTER TABLE main.sales.customers ALTER COLUMN email SET MASK main.sec.email_mask;

In Snowflake, a masking policy is a schema-level object (Enterprise Edition or higher). Snowflake documents that tables protected by data protection policies can be accessed over the Horizon Iceberg REST API, with masking and row access policies enforced, and that Spark enforcement uses a separate connector guide.

-- Snowflake SQL: mask an email column except for one role
CREATE MASKING POLICY email_mask AS (val STRING) RETURNS STRING ->
  CASE WHEN CURRENT_ROLE() IN ('PII_READER') THEN val ELSE '***' END;
ALTER TABLE customers MODIFY COLUMN email SET MASKING POLICY email_mask;

Iceberg interoperability, now in both directions on each platform

Unity Catalog supports managed Iceberg tables (Databricks Runtime 16.4 LTS or above, with serverless compute enabled and predictive optimisation for maintenance), Iceberg specification versions 1 to 3, and an Iceberg REST Catalog API that Databricks says supports read and write operations from external Iceberg engines. External engines cannot read Unity Catalog views through it, and credential vending is not supported on workspaces that use default storage. Tables managed by other catalogs, including Snowflake Horizon Catalog, AWS Glue and Hive metastore, appear as foreign Iceberg tables, which are read-only in Databricks.

Horizon Catalog lets external engines read and write Snowflake-managed Iceberg v2 and v3 tables through the Horizon Iceberg REST Catalog API; Snowflake's documentation marks both read and write as generally available, in all commercial regions. The supported engines listed are Apache Doris, Apache Flink, Apache Spark, Dremio, DuckDB, PyIceberg, StarRocks and Trino. Writes have documented limits: no CREATE TABLE AS SELECT from an external engine, no equality deletes, no Iceberg branches or tags, no writes to dynamic tables or shared Iceberg tables, and no custom base location on CREATE TABLE. Native Snowflake tables are not readable this way. Among catalogs, Snowflake lists Apache Polaris, AWS Glue, Google BigLake Metastore and another Snowflake account as available, Microsoft Fabric in development and Databricks Unity Catalog as not announced.

The practical result for mixed estates: Spark, Trino or DuckDB can now write to Iceberg tables owned by either catalog, but Databricks itself reads Horizon-owned tables read-only, and Snowflake does not list Unity Catalog as a client of its REST API. Decide which catalog owns each shared table, and check both vendors' current limits for that exact path.

Scope beyond the platform

Unity Catalog reaches outward through Lakehouse Federation (Snowflake, BigQuery and AWS Glue catalogs without copying data) and has an open source server that engines such as Spark and DuckDB can use outside Databricks, although it is a sandbox project whose APIs are still evolving. Horizon Catalog reaches outward through catalog-linked databases and external catalogs such as AWS Glue and OneLake, and through its Iceberg REST API. Neither documents a business glossary or formal stewardship workflows, so organisations with large estates outside one platform often add a cross-platform catalog such as Atlan or Collibra above them.

Pricing and licensing

Unity Catalog. No separate price. Databricks states it is included with the Premium and Enterprise tiers, and you pay for compute and storage in DBUs (plus cloud provider charges for classic compute). DBU rates vary by product, compute type, tier, cloud and region; use Databricks' pricing calculator. The open source Unity Catalog server is free under Apache 2.0.

Snowflake Horizon Catalog. No separate price; you pay Snowflake credits and storage. Most governance features need Enterprise Edition or higher; the Service Consumption Table effective 4 November 2026 lists On Demand credits in AWS US East (Northern Virginia) at USD 2.00 for Standard and USD 3.00 for Enterprise, with other regions priced differently. Horizon Iceberg REST Catalog API requests are billed at 0.5 credit per million calls as Cloud Services, with billing scheduled to begin in the second half of 2026 (subject to change), plus standard cross-region egress.

Pricing checked on the vendors' official pages on 7 November 2026. Prices change; confirm before buying.

Where each one leads

Unity Catalog strengths

  • Included in Databricks Premium and Enterprise tiers with no separate licence
  • Governs files, functions and ML models as well as tables
  • Automatic column-level lineage across notebooks, jobs, SQL, models and dashboards
  • Iceberg REST read and write for external engines, plus federation of Snowflake, BigQuery and Glue
  • Open source server under the Linux Foundation

Snowflake Horizon Catalog strengths

  • Already present in every Snowflake account
  • Masking and row access policies are enforced for Iceberg REST engines too
  • External engines can read and write Snowflake-managed Iceberg v2 and v3 tables (GA)
  • Wide list of supported external engines, including Spark, Trino, Flink, DuckDB and PyIceberg
  • Data quality, classification and lineage in the same platform as the data

Limitations

Unity Catalog limitations

  • Centred on Databricks; not a full enterprise business catalog
  • Foreign Iceberg tables from Snowflake Horizon and other catalogs are read-only
  • Open source edition is a sandbox project with evolving APIs
  • Glossary and stewardship workflows are thin compared with dedicated catalogs

Snowflake Horizon Catalog limitations

  • Most governance controls need Enterprise Edition or higher
  • Iceberg REST covers Snowflake-managed Iceberg tables only, not native Snowflake tables
  • External writes exclude CTAS, equality deletes, branches and tags
  • Unity Catalog is not an announced client of the Horizon Iceberg REST API

When to choose each

Choose Unity Catalog if

  • Databricks is your main data and AI platform
  • You need to govern files, functions and ML models alongside tables
  • You want governance available on every workspace without an edition upgrade
  • You want to federate Snowflake, BigQuery or Glue catalogs into one namespace
  • An open source catalog server matters for portability

Choose Snowflake Horizon Catalog if

  • Snowflake is your main data platform and you are on Enterprise Edition or higher
  • You want policies defined once and enforced in Snowflake and in Iceberg REST engines
  • Other engines need to write to Iceberg tables that Snowflake governs
  • You want quality checks, classification and lineage without another product

When neither is right

Final recommendation

Bottom line

For almost everyone, the catalog follows the platform: on Databricks, Unity Catalog is the governance layer to use, and on Snowflake, Horizon Catalog is, provided you are on Enterprise Edition or higher for its policy, classification and lineage features. Unity Catalog covers more asset types and is available on every current Databricks workspace; Horizon Catalog now opens Snowflake-managed Iceberg tables to external engines for both read and write, with its policies still applied. If you run both platforms, choose one owning catalog per shared Iceberg table, and add a cross-platform catalog above them if you need a common glossary and stewardship.

Frequently asked questions

Do Unity Catalog or Horizon Catalog cost extra?

Neither has a separate licence. Databricks says Unity Catalog is included with the Premium and Enterprise tiers. Horizon Catalog is part of Snowflake, but many governance features need Enterprise Edition or higher, and Horizon Iceberg REST API calls are billed at 0.5 credit per million calls, with billing scheduled from the second half of 2026.

Can Spark or Trino write to Snowflake-managed Iceberg tables?

Yes. Snowflake documents read and write, both generally available, for Snowflake-managed Iceberg v2 and v3 tables through the Horizon Iceberg REST Catalog API, with limits such as no CTAS, equality deletes, branches or tags. Native Snowflake tables cannot be read this way.

Can Databricks read tables governed by Snowflake Horizon?

Yes, as foreign Iceberg tables through Lakehouse Federation, which are read-only in Databricks. Snowflake lists Databricks Unity Catalog as not announced as a client of its Iceberg REST API.

Is Unity Catalog open source?

There is an open source Unity Catalog server under Apache 2.0, a sandbox project of the LF AI & Data Foundation; 0.7.0 shipped on 13 October 2026 and its APIs are still evolving. It is separate from the managed Unity Catalog in Databricks.

Do I still need a separate data catalog?

Not if nearly all your data is in one platform. If your estate spans several platforms and you need a shared business glossary, stewardship workflows or lineage across tools, organisations often add a cross-platform catalog above Unity Catalog or Horizon.

Sources

Checked November 2026.

How we research comparisons: our editorial method.

More comparisons

Browse all SQL comparisons or the tools directory.