Skip to content

Microsoft Office Open XML Format (.pptx)

.pptx file signature | application/octet-stream

Microsoft Office Open XML Format (OOXML) DocumentNOTE:There is no subheader for MS OOXML files as there is with DOC, PPT, and XLS files. To better understand the format of these files,rename any OOXML file to have a .ZIP extension and then unZIP the file;look at the resultant file named[Content_Types].xmlto see the contenttypes. In particular, look for the<Override PartName=tag, where youwill findword,ppt, orxl, respectively.Trailer:Look for50 4B 05 06(PK..) followed by 18 additional bytesat the

Safe

Magic Bytes

Offset 0
50 4B 03 04 50 4B 05 06 50 4B 07 08

Sources: Wikipedia

All Known Signatures

2 signature variants are documented for .pptx files across multiple sources.

Hex Signature Offset Sources
50 4B 03 04 50 4B 05 06 50 4B 07 08 0 Wikipedia
50 4B 03 04 14 00 06 00 0 Gary Kessler

Extension

.pptx

MIME Type

application/octet-stream

Byte Offset

0

Risk Level

Safe

Validation Code

How to validate .pptx files in Python

Python
def is_pptx(file_path: str) -> bool:
    """Check if file is a valid PPTX by magic bytes."""
    signature = bytes([0x50, 0x4B, 0x03, 0x04, 0x50, 0x4B, 0x05, 0x06, 0x50, 0x4B, 0x07, 0x08])
    with open(file_path, "rb") as f:
        return f.read(12) == signature

How to validate .pptx files in Node.js

Node.js
function isPPTX(buffer: Buffer): boolean {
  const signature = Buffer.from([0x50, 0x4B, 0x03, 0x04, 0x50, 0x4B, 0x05, 0x06, 0x50, 0x4B, 0x07, 0x08]);
  return buffer.subarray(0, 12).equals(signature);
}

How to validate .pptx files in Go

Go
func IsPPTX(data []byte) bool {
    signature := []byte{0x50, 0x4B, 0x03, 0x04, 0x50, 0x4B, 0x05, 0x06, 0x50, 0x4B, 0x07, 0x08}
    if len(data) < 12 {
        return false
    }
    return bytes.Equal(data[:12], signature)
}

API Endpoint

GET /api/v1/pptx
curl https://filesignature.org/api/v1/pptx

See the full API documentation for all endpoints and parameters.

Frequently Asked Questions

What is a .pptx file?

A .pptx file is a Microsoft Office Open XML Format file. Microsoft Office Open XML Format (OOXML) DocumentNOTE:There is no subheader for MS OOXML files as there is with DOC, PPT, and XLS files. To better understand the format of these files,rename any OOXML file to have a .ZIP extension and then unZIP the file;look at the resultant file named[Content_Types].xmlto see the contenttypes. In particular, look for the<Override PartName=tag, where youwill findword,ppt, orxl, respectively.Trailer:Look for50 4B 05 06(PK..) followed by 18 additional bytesat the

What are the magic bytes for .pptx files?

The magic bytes for Microsoft Office Open XML Format files are 50 4B 03 04 50 4B 05 06 50 4B 07 08 at byte offset 0. These bytes uniquely identify the file format regardless of the file extension.

How do I validate a .pptx file?

To validate a .pptx file, read the first bytes of the file and compare them against the known magic bytes (50 4B 03 04 50 4B 05 06 50 4B 07 08) at offset 0. This is more reliable than checking the file extension alone, as extensions can be renamed.

What is the MIME type for .pptx files?

There is no officially registered MIME type for .pptx files. Systems typically use application/octet-stream as a generic fallback when handling this format.

Is it safe to open .pptx files?

Microsoft Office Open XML Format (.pptx) files are generally safe to open. They are classified as low risk because they primarily contain data rather than executable code. However, always ensure files come from a trusted source.