> For the complete documentation index, see [llms.txt](https://docs.transientlabs.xyz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.transientlabs.xyz/tl-creator-contracts/erc7160tl.md).

# ERC7160TL

## Overview

ERC7160TL is Transient Labs' Creator Contract compliant with the [ERC-7160](https://eips.ethereum.org/EIPS/eip-7160) specification.&#x20;

## Airdrops

ERC7160TL allows for single token and multi-token airdrops. Multi-token airdrops are more expensive than batch mints, however, still are market leading for code-less solutions.&#x20;

| Number of Tokens | Market    | ERC721TL  |
| ---------------- | --------- | --------- |
| 5                | 450,000   | 420,000   |
| 10               | 830,000   | 675,000   |
| 100              | 6,200,000 | 5,500,000 |

## Batch Minting

ERC7160TL implements market leading batch mint operations, while adhering to the ERC-721 specification. This is achieved through the use of custom ownership logic. The table and chart below shows gas usage comparison to the current market for batch mints, in gas units.

<table><thead><tr><th width="123">Tokens</th><th width="144">Market</th><th width="220">ERC721TL Batch Mint</th></tr></thead><tbody><tr><td>1</td><td>210,000</td><td>176,000</td></tr><tr><td>5</td><td>450,000</td><td>198,000</td></tr><tr><td>10</td><td>830,000</td><td>209,000</td></tr><tr><td>100</td><td>6,200,000</td><td>402,000</td></tr><tr><td>200</td><td>12,000,000</td><td>616,000</td></tr><tr><td>1,000</td><td>Not Possible</td><td>2,331,000</td></tr></tbody></table>

<figure><img src="/files/4DcYRvpSokDt4BJYTxG7" alt=""><figcaption></figcaption></figure>

## External Mint

ERC721TL has been outfitted with an external mint function that allows for approved mint contracts to mint tokens. This is extremely useful when it comes to minting for direct sales, edition sales, and more! For more on access control, see below.

## Multi-Metadata

ERC7160TL follows the ERC-7160 specification, allowing each token to have an array of metadata associated with it. This allows for extra functionality and design for creators & collectors.

Collectors of the tokens on this contract can choose to change their token's metadata to any option in the array. This emits a `MetadataUpdate` event that let's marketplaces re-index the metadata and display it.&#x20;

## Burn

ERC721TL allows for any collector to burn tokens. This is intended to be used by creators with burn and redeem contracts in the future, but nothing stops collectors from burning tokens as they wish.

The burn function allows for the owner of the token or an approved operator to burn. The operator approval is required for burn and redeem contracts. This allows burn and redeem contracts to be configurable and determined at a later time.

## Source

<https://github.com/Transient-Labs/tl-creator-contracts/blob/main/src/erc-721/multi-metadata/ERC7160TL.sol>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.transientlabs.xyz/tl-creator-contracts/erc7160tl.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
