The Snowflake open-source license (Apache 2.0) defines how you may use, modify, and redistribute Snowflake-released code inside PostgreSQL projects.
The license is Apache 2.0, letting you use Snowflake-authored libraries in proprietary or open projects, provided you keep the copyright header and NOTICE file intact.
Any time you copy Snowflake-released SQL, functions, or sample data into your own repository you must retain the full license text or a compliant header at the top of each file.
Place the header in a block comment before any SQL statements so editors and CI tools can detect it automatically.
Copy the template below, replace placeholders, and commit the file.
/*
Snowflake Open Source License Header
Copyright (c) <YEAR> <YOUR COMPANY>
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
*/
Use a pre-commit hook or CI step that scans *.sql for the words “Apache License, Version 2.0”. Fail the build if any file is missing the header.
/*
Snowflake Open Source License Header — 2024 DataNova Inc.
Licensed under the Apache License, Version 2.0
*/
SELECT c.id,
c.name,
o.order_date,
o.total_amount
FROM Customers AS c
JOIN Orders AS o ON o.customer_id = c.id
WHERE o.order_date >= CURRENT_DATE - INTERVAL '30 days';
Keep a central LICENSE file, add a NOTICE file listing third-party dependencies, and educate reviewers to reject pull requests that strip headers.
Omitting the full header. Always paste the entire block comment, not a shortened version.
Altering license terms. Never delete clauses—add your own text below the original if needed.
Retain headers, automate checks, and you can safely blend Snowflake code with PostgreSQL workloads.
No. Apache 2.0 is permissive, so you can combine the code with proprietary projects if you keep the notice intact.
No. The license does not require you to publish your modifications, only to retain the license notice.
Place NOTICE at the repository root so build scripts and auditors can discover it easily.