The Carbon Bridge allows anyone to bring their legacy carbon offsets on-chain and make them composable with almost every DeFi protocol.

The Carbon Bridge is currently live on Kovan testnet for demo purposes only. It will go live on Polygon mainnet soon™️.

The Voluntary Carbon Market

The main goal of the voluntary carbon market is to drive finance to carbon projects that reduce greenhouse gas (GHG) emissions. Carbon offsets are the vehicle that connects carbon projects with companies that purchase offsets to achieve their climate targets. An offset thus represents a measurable and verifiable removal, reduction, or avoidance of GHG emissions and is denominated in tCO2e (which means "tonne of CO2 equivalent").

→ Take a deeper dive into carbon offsets with these docs. → Learn about how voluntary carbon markets differ from compliance markets here.

Carbon Standards

In the voluntary carbon market, carbon standards set the rules and requirements carbon projects need to follow in order to demonstrate they meet minimum quality criteria. Verra's Verified Carbon Standard and Gold Standard are the two major players, with smaller standards making up less than a quarter of total offsets issued as of today.


The "rules" carbon projects need to follow are a combination of high-level requirements and processes set by the standard and specific accounting methodologies. A methodology dictates things like monitoring requirements and is different for each carbon offset generating activity. A methodology for protecting forests from deforestation requires different data to be collected than a methodology for wetland restoration. Independent 3rd parties—a list of auditors whitelisted by each standard—will assess projects against these rules and requirements. Only after a successful verification will the project be issued offsets by the standard body.

Carbon Registries

Each standard maintains a centralized registry with a list of all its projects, and the issued and retired offsets associated with each project.

Retiring offsets?

After projects have proven that they've removed or reduced GHG emissions they are issued offset credits that are in an active state. Because projects generally don't have direct contact with companies who will buy their offsets to satisfy sustainability claims, they often sell them to intermediaries—brokers, resellers, and retailers. Offset credits can pass from one hand to another without changing their status. But when an end-buyer wants to use the offsets to compensate their GHG emissions for carbon accounting purposes, the offsets need to be retired. Now the offset has fulfilled its "duty" and nobody else will be able to claim the carbon removal or reduction for their books. A registry account is needed to trade carbon credits in an active state. These accounts can cost $1000 a year in the case of Gold Standard.

The Toucan Carbon Bridge

The Carbon Bridge allows anybody to bring their carbon offsets on-chain in a tokenized form. Tokens have multiple advantages over legacy offsets, including full transparency, programmability, fractionalization, and composability with the emerging DeFi ecosystem. We want tokenized carbon to become a new DeFi primitive—a carbon money lego.

For now, the Carbon Bridge connects legacy carbon registries with an on-chain registry on the Polygon network. We believe that carbon needs to be a multi-chain asset, and more public blockchains will be supported in the future.

How it works

The Toucan Carbon Bridge is a one-way bridge: carbon offsets can be brought on-chain but can't go the other way. The reason for that is simple: we want to prevent double-counting and value the deterministic nature of public blockchains. This is why users of the Carbon Bridge need to retire the offsets in the "real world" before bringing them on-chain. This way, we can guarantee that a carbon token is unique and that burning a token on-chain is equivalent to retiring an offset and doesn't require a centralized entity to go retire the "real-world asset" in a carbon registry. After all, a public blockchain is probably a safer and more transparent way to keep track of carbon assets than any centralized ledger system 🤷

Let's go through the process of bringing carbon offsets over the Toucan Carbon Bridge step-by-step:

1. Initialize carbon offset bridging

The bridging process starts on our dApp with the minting of a non-fungible token: a BatchNFT. The BatchNFT is in an initialized state and doesn't have any offset-specific metadata yet. But it has a unique identifier, which is our input for step 2 of the process.

2. Retire the offsets in the legacy world

Next, the offsets to be tokenized are retired in a traditional carbon registry and the unique identifier of the BatchNFT is included in the retirement note. By including this unique identifier in the public registry, we create a permanent link between the retirement event and the NFT.

For this step, you need to have a registry account or work with someone who does. If you don't have access to a registry account, we do—just reach out 📧.

3. Provide the serial number to the NFT contract

Offsets are retired in batches and each retired batch of credits has a unique serial number provided by the registry after retirement. For VCS credits, it looks something like this:


This serial number carries a lot of relevant information, including the number of offsets, certifying standard body, project identifier, country, monitoring period (vintage), and more. The full taxonomy can be found here.

The next step is to update the BatchNFT with this serial number. Now the link between the legacy and on-chain registries is complete—the BatchNFT is linked to the retirement entry in the legacy registry through the serial number and the retirement entry has the NFT's unique identifier in its metadata. These steps are key because they ensure that double counting / double bridging of carbon offsets is not possible.

Furthermore, the serial number is used to update the BatchNFT with project-specific attributes, some of which are stored on-chain while others are stored as metadata on IPFS. This information will be useful down the line. Submitting the serial number to the BatchNFT contract changes the state of the NFT to awaits approval.

4. Retirement needs to be confirmed

Once the BatchNFT was updated with a serial number, it needs to be approved by a verified member of the Toucan community. This step is required to protect against fraudulent inputs and is dependent on human action and trust, for now. However, there are ways to automate this process in the future, e.g. with a decentralized arbitration service like Kleros managing disputes.

Once the correctness of the serial number input is confirmed, the state of the BatchNFT changes to approved and is now a fully tokenized batch of carbon offsets that can be sold on NFT marketplaces or used as collateral in DeFi lending markets 🥳

However, for many other use cases—such as sending a fraction of an offset or creating carbon index tokens—NFTs can be a bit unpractical. This is why we think most users will want to take at least one more step.

5. From NFT to ERC20

In the last step of the Carbon Bridge, the BatchNFT can be used to mint an equivalent number of fully fungible ERC20 tokens which we call TCO2 tokens. The "T" here stands for "Toucan" - or "tonne" — or "tokenized" — and 1 TCO2 token represents 1 carbon offset with a value of 1 tCO2e. So, an NFT representing a batch of 100 offsets can be fractionalized into 100 TCO2 tokens.

TCO2 tokens still carry all the attributes and metadata of the NFT, making them specific to a given project and vintage. This is crucial because carbon offsets trade at very different price points due to offsets of a certain type or with specific attributes being more sought-after than others. This system guarantees that a soil carbon project with additional certification can be priced higher than a large-scale renewable energy project.

TCO2 is the general term for fungible tokenized carbon offsets. When you fractionalize a BatchNFT, the ERC20 token will have TCO2- as a prefix, followed by an information-rich name that includes the registry of origin, the project, the vintage, and so on.

For example: TCO2-GS-0001-2019

However, there's one downside: because they are specific to a single project and vintage, TCO2 tokens are not very liquid. While in the example above it makes sense to discriminate between the two tokens, what if we want to create a liquid market for soil carbon where all soil carbon offsets are treated equally? This would allow price discovery for a specific type of carbon asset—something we are struggling to find in the "real world". Thy is why we created Carbon Pools.