> For the complete documentation index, see [llms.txt](https://docs.imintify.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.imintify.com/smart-contract/upload-files-to-ipfs.md).

# Upload files to IPFS

## 🏞️ Upload files to IPFS using the dashboard

{% hint style="info" %}
When creating a Smart Contract, the IPFS storage is automatically included.
{% endhint %}

### **📑 1. Create a Smart Contract**

Deploy your NFT Smart Contract [ app.imintify.com/smart-contract](https://app.imintify.com/smart-contract).\
For more information, read the docs on how [create a Smart Contract](/smart-contract/create-nft-smart-contract.md).<br>

### **🏞️ 2. Upload NFT images to IPFS**

Once you have created your contract, go to the tab: **NFTs**<br>

<figure><img src="/files/6UfDZLFUEuA9GgVEMO0S" alt=""><figcaption></figcaption></figure>

### **🆙 3. Start Uploading**

#### Choose **Single** or **Batch** **upload** to start uploading

<figure><img src="/files/aw34VuHDEgFGPtw1JjgU" alt=""><figcaption></figcaption></figure>

#### **💧 Drag and drop your image files**

Supported files .png .webp .gif .jpg .mp4 .csv or .json

{% hint style="info" %}
Note: Please upload a **folder** containing **all your NFT images** and **metadata file** for each NFT or a **single metadata file** containing all your NFT metadata.<br>
{% endhint %}

<div align="left"><figure><img src="/files/AeG1EE6DHPD7IriWhaeL" alt=""><figcaption></figcaption></figure></div>

### **👀 4. Preview**

Preview the uploaded NFT images and proceed.

<figure><img src="/files/oiXVbSRgGq7LCgS4i6hx" alt=""><figcaption></figcaption></figure>

### 🕑  5. Reveal type

Choose how you want to reveal your NFTs to your collectors.

* **Reveal upon Mint:** Collectors will immediately see the final NFT image when they complete the minting.
* **Delayed Reveal:** Collectors will mint your placeholder image, and then you will reveal it at a later time.

{% hint style="info" %}
For delayed reveal, you need to set a password and don't lose this password. There is no recovery option.
{% endhint %}

### **🚀 6. Finalize NFTs on the Blockchain**

Now, upload all the NFT images to the blockchain and sign the transaction to verify.

{% hint style="info" %}
It can take some time to upload all the images to the blockchain for large collections, such as 10k or large files.
{% endhint %}
