WebP file signature
Magic number at the start of the file · RIFF....WEBP
WebP is a RIFF container. The file starts with RIFF, then a four-byte little-endian file size (any value, shown here as wildcards), then the form type WEBP at offset 8.
What this magic number means
A magic number is a short, fixed run of bytes at a known position that tells a program what a file really is, no matter what the filename says. If a file starts with the bytes 52 49 46 46 ?? ?? ?? ?? 57 45 42 50 (the text RIFF....WEBP), it is a WebP file.
The RIFF container is also used by WAV audio and AVI video; the four bytes at offset 8 (WEBP, WAVE or AVI ) are what tell them apart.
Formats that use the 52 49 46 46 signature
These file types in our database carry this signature:
How to check a file's signature
You can read the first bytes of any file yourself. The magic bytes are shown in hex, the same way this page lists them.
Linux & macOS
- xxd -l 16 example.webp
- hexdump -C -n 16 example.webp
- file example.webp
Windows (PowerShell)
- Format-Hex -Path example.webp -Count 16
Python
- open("example.webp","rb").read(12).hex()
In your browser
- Drop the file into the WhatFileType identifier, which reads the signature without uploading it.
Frequently asked questions
What is the WebP file signature?
WebP files start with the hex bytes 52 49 46 46 ?? ?? ?? ?? 57 45 42 50 (RIFF....WEBP in ASCII). This magic number identifies the format regardless of the file's name or extension.
How do I check a file's magic number?
Open the file in a hex editor, or run a command such as xxd -l 16 example.webp on Linux or macOS, or Format-Hex -Path example.webp -Count 16 in Windows PowerShell, and read the first bytes.
Can a file fake the WebP signature?
Renaming a file does not change its bytes, so the extension can lie but the signature usually cannot. A genuine WebP file has these exact bytes; a file with the wrong bytes is not really WebP, whatever its name says.