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 processing
Step:
{
"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:
{
"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):
{
"steps": {
"uploaded": {
"robot": "/upload/handle",
"output_meta": false
},
"exported": {
"use": "encoded",
"robot": "/s3/store",
"path": "${fields.output_path}"
}
}
}