# Why are there /meta/read charges in my billing?

The `/meta/read` charges appear in your monthly billing, because Transloadit by default automatically extracts metadata from your uploaded files and other Steps. This is a standard part of file processing that helps enable features like using `${file.ext}`,`${file.name}`, and other metadata variables in your Assembly Instructions.

## How much do /meta/read charges cost?

Metadata extraction costs **1% of the file size**. For example:

* A 100 MB file would incur 1 MB in metadata extraction charges
* A 1 GB file would incur 10 MB in metadata extraction charges

## How can I avoid /meta/read charges?

You can opt out of automatic metadata extraction by adding `"output_meta": false` to your processingStep:

![](/_next/static/media/copy.04p1cju9qekk_.svg?dpl=dpl_B5mt5tVSoART1DMQTCiYtAsGkGSU)

```json
{
  "steps": {
    ":original": {
      "robot": "/upload/handle",
      "output_meta": false
    },
    "resize": {
      "use": ":original",
      "robot": "/image/resize",
      "format": "jpg",
      "width": 200,
      "height": 200,
      "output_meta": false
    }
  }
}

```

## When should I keep metadata extraction enabled?

Most processing Templates will require meta data extraction. It's important for:

* letting Robots ignore file types they cannot handle
* using file metadata variables in your Assembly Instructions (like `${file.ext}`, `${file.name}`,`${file.meta.width}`)
* filtering files based on metadata properties
* storing metadata tags with your files
* generating dynamic file paths based on file properties

Example that may not require metadata:

![](/_next/static/media/copy.04p1cju9qekk_.svg?dpl=dpl_B5mt5tVSoART1DMQTCiYtAsGkGSU)

```json
{
  "steps": {
    ":original": {
      "robot": "/upload/handle"
    },
    "stored": {
      "use": ":original",
      "robot": "/s3/store",
      "path": "/uploads/${file.id}_${file.name}"
    }
  }
}

```

## When can I safely disable metadata extraction?

You can disable metadata extraction when:

* You don't use any file metadata variables in your Assembly
* You're using fixed file paths and names
* You don't need to filter or sort files based on their properties

Example that doesn't need metadata (`fields` is provided when creating the Assembly):

![](/_next/static/media/copy.04p1cju9qekk_.svg?dpl=dpl_B5mt5tVSoART1DMQTCiYtAsGkGSU)

```json
{
  "steps": {
    "uploaded": {
      "robot": "/upload/handle",
      "output_meta": false
    },
    "exported": {
      "use": "encoded",
      "robot": "/s3/store",
      "path": "${fields.output_path}"
    }
  }
}

```
