On this page:
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.

encodingFormat

encodingFormat · Not mentioned by Google

Appears in

What is it?

encodingFormat declares the media type (MIME type) of a file or creative work. It tells search engines whether a resource is a PDF, CSV, MP3, or any other format. This property applies broadly to both CreativeWork and MediaObject, making it relevant for documents, audio files, datasets, and software downloads.

Why this matters for AEO

When a user asks "is this report available as a PDF?" or "what format is this dataset in?", AI engines check encodingFormat to answer directly. For downloadable resources, this field helps AI assistants filter results by file type. A query like "download [topic] dataset as CSV" can match structured data that specifies "encodingFormat": "text/csv" without the AI needing to parse download links.

What the specs say

Schema.org: Text or URL. Applies to CreativeWork and MediaObject. "Media type typically expressed using a MIME format (see IANA site and MDN reference), e.g. application/zip for a SoftwareApplication binary, audio/mpeg for .mp3 etc." schema.org/encodingFormat

Google: Not mentioned. No dedicated Google structured data documentation references encodingFormat for DigitalDocument.

How to find your value

Common MIME types

  • PDFapplication/pdf
  • CSVtext/csv
  • Excelapplication/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • Wordapplication/vnd.openxmlformats-officedocument.wordprocessingml.document
  • MP3audio/mpeg
  • ZIPapplication/zip
  • HTMLtext/html
  • JSONapplication/json

Format and code

encodingFormat accepts a MIME type string or a URL to the IANA media type definition.

{
  "@context": "https://schema.org",
  "@type": "DigitalDocument",
  "name": "Q1 2026 Financial Report",
  "url": "https://example.com/reports/q1-2026.pdf",
  "encodingFormat": "application/pdf"
}

For datasets with multiple download formats:

{
  "@context": "https://schema.org",
  "@type": "Dataset",
  "name": "Climate Observations 2025",
  "distribution": [
    {
      "@type": "DataDownload",
      "contentUrl": "https://example.com/data/climate.csv",
      "encodingFormat": "text/csv"
    },
    {
      "@type": "DataDownload",
      "contentUrl": "https://example.com/data/climate.json",
      "encodingFormat": "application/json"
    }
  ]
}

Valid values:

  • "application/pdf" (standard MIME type)
  • "text/csv" (standard MIME type)
  • "audio/mpeg" (for MP3 audio)
  • "HTML" or "PDF" (shorthand strings accepted by schema.org for niche formats like LegislationObject)

Invalid values:

  • "pdf" (not a valid MIME type format)
  • "PDF file" (descriptive text)
  • ".pdf" (file extension, not a MIME type)

Webflow implementation

Static pages

Add the JSON-LD in Page Settings > Custom Code > Head Code:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "DigitalDocument",
  "name": "Your Document Title",
  "url": "https://yourdomain.com/docs/your-file.pdf",
  "encodingFormat": "application/pdf"
}
</script>

CMS template pages

If your Webflow CMS stores documents with a file field and a format plain text field:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "DigitalDocument",
  "name": "{{wf {"path":"name","type":"PlainText"} }}",
  "url": "{{wf {"path":"document-file","type":"PlainText"} }}",
  "encodingFormat": "{{wf {"path":"file-format","type":"PlainText"} }}"
}
</script>

In Schema HQ

The encodingFormat field can auto-detect the file format from the uploaded asset URL and map it to the correct MIME type for encodingFormat, removing the need for a manual format field in the CMS.

Real examples

devMode.fm (from nystudio107.com):

{
  "@context": "http://schema.org",
  "@type": "AudioObject",
  "bitrate": "64k",
  "contentSize": "72969149",
  "contentUrl": "https://devmode.fm/transcoder/devmode0041_64kbps_22050_1c.mp3",
  "duration": "4560.535510",
  "embedUrl": "https://devmode.fm/player-card/webpack-inside-out-with-sean-larkin",
  "encodingFormat": "audio/mpeg"
}

Swedish National Data Service (from docs.researchdata.se):

{
  "@type": "DataDownload",
  "name": "my-data.tsv",
  "contentUrl": "https://www.sample-data-repository.org/dataset/my-data.csv",
  "encodingFormat": "text/csv"
}

Related fields

FAQ

What is the difference between encodingFormat and fileFormat?

fileFormat is a superseded property. Schema.org now recommends encodingFormat as the canonical way to declare media type. Both accept the same MIME type values, but new implementations should use encodingFormat.

Should I use the full MIME type or a shorthand like "PDF"?

Use the full MIME type (e.g., application/pdf) for maximum compatibility. Schema.org does accept shorthand strings in some contexts, but MIME types are unambiguous and recognized by all parsers.

Does encodingFormat apply to web pages themselves?

It can. A web page is technically text/html, but this is rarely useful to declare since browsers and crawlers already know the format. encodingFormat is most valuable for downloadable files, media objects, and datasets where the format is not self-evident from the URL.

On this page:
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.

Need help with schema on your site?

We implement structured data for Webflow sites — from audit to deployment.

Work with us

Work with us