What is content provenance?
Content provenanceContent provenance: The record of where a piece of content came from and how it changed, carried with the content itself. is a signed label inside a file or text. It shows who signed it, what they declared, including any AI use, and whether it changed since. Anyone can check it, free.

- Open standard
- Built on C2PAC2PA: The Coalition for Content Provenance and Authenticity: the group that publishes the open standard for content labels., the open standard from a group that includes Adobe, Microsoft and the BBC. Encypher wrote its part for text.
- Formats
- 75+ formats for signing and verification, from plain text to PDF and Word.
- Checking
- Free, with no account.
- What it shows
- Who signed, what they declared, and whether it changed. Never whether the content is true.
How it works: sign, carry, check
An article appears and a key signs it. A gold thread sews the label round the article and the blue Encypher badge lands on its corner. The words read: Sign it, then The label goes inside. A magnifier glides over the badge, the badge lifts and pulses, and a check mark appears. The words read: Anyone can check it, free.
Sign it.
When you publish, Encypher adds a label with a digital signatureDigital signature: Math that shows which key signed something and that it has not changed since. Any edit to the signed bytes breaks it.: who you are, the time, and what you declare, including any AI use.
It travels with the work.
In a file, the label sits inside the file. In text, it rides in characters readers never see.
How it works in textAnyone checks it.
The free checker shows who signed and whether anything changed since.
What a check tells you
Labels for text, images, audio, video and documents
The idea is the same everywhere. Where the label sits depends on the kind of file.
ImagesA label in its own part of a JPEG, PNG or HEIC file.
TextA label in characters you cannot see, which copy with the words.
Audio and videoA label in a part of the file that players skip.
DocumentsA label inside a PDF, Word or EPUB file, apart from the pages.
Live streamsA label on every short piece, linked to the one before.
Every formatThe full list, live from our API.
All formats, by kind of file
Our API lists 88 file formats. Encypher can both sign and check 79 of them. Pick a kind of file to see each one and its media typeMIME type: The standard name for a file format, such as image/jpeg or audio/wav, that software uses to decide how to read a file..
| Format | File ending | Sign | Check | Media type |
|---|---|---|---|---|
| JPEG | .jpg, .jpeg | Yes | Yes | image/jpeg, image/jpg |
| PNG | .png | Yes | Yes | image/png |
| WebP | .webp | Yes | Yes | image/webp |
| TIFF | .tiff, .tif | Yes | Yes | image/tiff |
| AVIF | .avif | Yes | Yes | image/avif |
| HEIC | .heic | Yes | Yes | image/heic |
| HEIF | .heif | Yes | Yes | image/heif |
| HEIC Sequence | .heics | Yes | Yes | image/heic-sequence |
| HEIF Sequence | .heifs | Yes | Yes | image/heif-sequence |
| SVG | .svg | Yes | Yes | image/svg+xml |
| DNG | .dng | Yes | Yes | image/x-adobe-dng |
| GIF | .gif | Yes | Yes | image/gif |
| JPEG XL | .jxl | Yes | Yes | image/jxl |
| Other TIFF-based images | Various | Yes | No | image/x-tiff-based |
| Other RIFF-based images | Various | Yes | No | image/x-riff-based |
| Format | File ending | Sign | Check | Media type |
|---|---|---|---|---|
| MP4 | .mp4 | Yes | Yes | video/mp4 |
| MOV | .mov | Yes | Yes | video/quicktime |
| AVI | .avi | Yes | Yes | video/x-msvideo, video/avi, video/msvideo |
| M4V | .m4v | Yes | Yes | video/x-m4v |
| Matroska video (MKV) | .mkv | Yes | Yes | video/matroska, video/x-matroska |
| MXF broadcast video | .mxf | Yes | Yes | application/mxf |
| MP4 (as application/mp4) | .mp4 | Yes | Yes | application/mp4 |
| Other RIFF-based video | Various | Yes | No | video/x-riff-based |
| Other MP4-style video | Various | Yes | No | video/x-bmff-based |
| WebM video | .webm | No | Yes | video/webm |
| Format | File ending | Sign | Check | Media type |
|---|---|---|---|---|
| WAV | .wav | Yes | Yes | audio/wav, audio/wave, audio/x-wav |
| MP3, MPA | .mp3, .mpa | Yes | Yes | audio/mpeg, audio/mp3, audio/mpa |
| M4A | .m4a | Yes | Yes | audio/mp4, audio/x-m4a, audio/m4a |
| AAC | .aac | Yes | Yes | audio/aac |
| FLAC | .flac | Yes | Yes | audio/flac |
| Ogg audio | .ogg, .oga | Yes | Yes | audio/ogg, application/ogg |
| Other RIFF-based audio | Various | Yes | No | audio/x-riff-based |
| WebM audio | .weba | No | Yes | audio/webm |
| Format | File ending | Sign | Check | Media type |
|---|---|---|---|---|
| Yes | Yes | application/pdf | ||
| EPUB e-book | .epub | Yes | Yes | application/epub+zip |
| Word document (DOCX), Microsoft Office | .docx | Yes | Yes | application/vnd.openxmlformats-officedocument.wordprocessingml.document |
| Excel workbook (XLSX) | .xlsx | Yes | Yes | application/vnd.openxmlformats-officedocument.spreadsheetml.sheet |
| PowerPoint deck (PPTX) | .pptx | Yes | Yes | application/vnd.openxmlformats-officedocument.presentationml.presentation |
| OpenDocument text (ODT), OpenDocument | .odt | Yes | Yes | application/vnd.oasis.opendocument.text |
| OpenXPS page file (OXPS) | .oxps, .xps | Yes | Yes | application/oxps, application/vnd.ms-xpsdocument |
| Krita drawing | .kra, .krz | Yes | Yes | application/x-krita |
| OpenRaster drawing | .ora | Yes | Yes | image/openraster |
| InDesign package (IDML) | .idml | Yes | Yes | application/vnd.adobe.indesign-idml-package |
| Google Earth map (KMZ) | .kmz | Yes | Yes | application/vnd.google-earth.kmz |
| 3D print file (3MF) | .3mf | Yes | Yes | model/3mf |
| ZIP archive | .zip | Yes | Yes | application/zip |
| Apple Keynote | .key | Yes | Yes | application/vnd.apple.keynote |
| Apple Numbers | .numbers | Yes | Yes | application/vnd.apple.numbers |
| Apple Pages | .pages | Yes | Yes | application/vnd.apple.pages |
| Excel binary workbook (XLSB) | .xlsb | Yes | Yes | application/vnd.ms-excel.sheet.binary.macroenabled.12 |
| Excel workbook with macros (XLSM) | .xlsm | Yes | Yes | application/vnd.ms-excel.sheet.macroenabled.12 |
| Excel template with macros (XLTM) | .xltm | Yes | Yes | application/vnd.ms-excel.template.macroenabled.12 |
| PowerPoint deck with macros (PPTM) | .pptm | Yes | Yes | application/vnd.ms-powerpoint.presentation.macroenabled.12 |
| PowerPoint show with macros (PPSM) | .ppsm | Yes | Yes | application/vnd.ms-powerpoint.slideshow.macroenabled.12 |
| PowerPoint template with macros (POTM) | .potm | Yes | Yes | application/vnd.ms-powerpoint.template.macroenabled.12 |
| Visio drawing (VSDX) | .vsdx | Yes | Yes | application/vnd.ms-visio.drawing |
| Visio drawing with macros (VSDM) | .vsdm | Yes | Yes | application/vnd.ms-visio.drawing.macroenabled.12 |
| Visio stencil (VSSX) | .vssx | Yes | Yes | application/vnd.ms-visio.stencil |
| Visio stencil with macros (VSSM) | .vssm | Yes | Yes | application/vnd.ms-visio.stencil.macroenabled.12 |
| Visio template (VSTX) | .vstx | Yes | Yes | application/vnd.ms-visio.template |
| Visio template with macros (VSTM) | .vstm | Yes | Yes | application/vnd.ms-visio.template.macroenabled.12 |
| Word document with macros (DOCM) | .docm | Yes | Yes | application/vnd.ms-word.document.macroenabled.12 |
| Word template with macros (DOTM) | .dotm | Yes | Yes | application/vnd.ms-word.template.macroenabled.12 |
| OpenDocument drawing (ODG) | .odg | Yes | Yes | application/vnd.oasis.opendocument.graphics |
| OpenDocument slides (ODP) | .odp | Yes | Yes | application/vnd.oasis.opendocument.presentation |
| OpenDocument sheet (ODS) | .ods | Yes | Yes | application/vnd.oasis.opendocument.spreadsheet |
| PowerPoint show (PPSX) | .ppsx | Yes | Yes | application/vnd.openxmlformats-officedocument.presentationml.slideshow |
| PowerPoint template (POTX) | .potx | Yes | Yes | application/vnd.openxmlformats-officedocument.presentationml.template |
| Excel template (XLTX) | .xltx | Yes | Yes | application/vnd.openxmlformats-officedocument.spreadsheetml.template |
| Word template (DOTX) | .dotx | Yes | Yes | application/vnd.openxmlformats-officedocument.wordprocessingml.template |
| Other ZIP-based files | Various | Yes | No | application/x-zip-based, applications/x-zip-based |
| Format | File ending | Sign | Check | Media type |
|---|---|---|---|---|
| Plain text | .txt | Yes | Yes | text/plain |
| CSV | .csv | Yes | Yes | text/csv |
| TSV | .tsv | Yes | Yes | text/tab-separated-values |
| HTML | .html, .htm | Yes | Yes | text/html |
| Markdown | .md | Yes | Yes | text/markdown |
| XML | .xml | Yes | Yes | text/xml |
| CSS | .css | Yes | Yes | text/css |
| XML (as application/xml) | .xml | Yes | Yes | application/xml |
| JSON | .json | Yes | Yes | application/json |
| YAML | .yaml, .yml | Yes | Yes | application/yaml |
| TOML | .toml | Yes | Yes | application/toml |
| JavaScript | .js | Yes | Yes | application/javascript |
| XHTML | .xhtml | Yes | Yes | application/xhtml+xml |
| Python | .py | Yes | No | text/x-python |
| Format | File ending | Sign | Check | Media type |
|---|---|---|---|---|
| OTF | .otf | Yes | Yes | font/otf |
| TTF | .ttf | Yes | Yes | font/ttf, application/x-font-ttf |
| SFNT | .sfnt | Yes | Yes | font/sfnt, application/font-sfnt |
When a site strips the label
Some sites rebuild files on upload and drop the label. A hidden watermarkWatermark: A mark placed in the content itself, visible or hidden, so it can be found again after the file is copied. added at signing can still point back to the signed record. The check reports that as recovery.

How it compares

- AI detectors
- An AI detectorAI detector: A model that guesses whether content was made by AI and returns a probability, not proof. guesses from patterns and gives a score. A label is a signed record, so it either checks out or it does not. Provenance vs. detection
- Blockchain timestamps
- A blockchain timestampBlockchain timestamping: Writing a file's hash to a public ledger to show it existed at a given time. stays on the chain. A label travels inside the copy, so whoever has the copy can check it. Provenance vs. blockchain
Questions
What is content provenance?
How is it different from normal metadata?
Does a label prove the content is true?
Does the label survive copy and paste?
Does the EU AI Act require it?
How do I add labels to my content?
For engineers
Show the technical detail
What a check does
A C2PA manifest is a JUMBF container of CBOR claims and assertions, signed with COSE under an X.509 certificate. A check extracts the manifest, validates the signature and the certificate chain against the C2PA Trust List, then recomputes the hard-binding hash over the content and compares it with the signed one. For text, the standard carries the manifest in invisible Unicode characters inside the text itself.
C2PA 2.3, with the standard for unstructured text, was published on January 8, 2026. Encypher authored C2PA's standard for unstructured text, published as Section A.7 in C2PA 2.3 and carried forward as Section A.8 in C2PA 2.4.
The capabilities endpoint
The format list above is read from GET /api/v1/capabilities/formats and refreshed hourly. It accepts 103 MIME type spellings: 97 for signing and 94 for verification, grouped under 88 canonical formats. Alias spellings, such as image/jpg, are listed beside their canonical type.
Create. Mark. Endure.
Sign your first file free. Checking stays free for everyone.