<span aria-hidden="true" id="why-are-there-metaread-charges-in-my-billing"></span>

# 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.

<span aria-hidden="true" id="how-much-do-metaread-charges-cost"></span>

## 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

<span aria-hidden="true" id="how-can-i-avoid-metaread-charges"></span>

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

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

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

```

<span aria-hidden="true" id="when-should-i-keep-metadata-extraction-enabled"></span>

## 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:

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

```

<span aria-hidden="true" id="when-can-i-safely-disable-metadata-extraction"></span>

## 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):

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

```

## See also:

[Will there be any surprises after I sign up?](/docs/faq/signup-surprises.md)

[What do I get for one GB?](/docs/faq/one-gb.md)

[How to rename files when exporting them to cloud storage?](/docs/faq/how-to-rename-files-during-export.md)
