Skip to content

FIT (.fit)

.fit file signature | application/fits

Safe

Magic Bytes

Offset 0
53 49 4D 50 4C 45 20 20 3D 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 54

Sources: Apache Tika

All Known Signatures

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

Hex Signature Offset Sources
53 49 4D 50 4C 45 20 20 3D 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 54 0 Apache Tika
53 49 4D 50 4C 45 20 20 3D 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 54 0 Apache Tika

Extension

.fit

MIME Type

application/fits

Byte Offset

0

Risk Level

Safe

Validation Code

How to validate .fit files in Python

Python
def is_fit(file_path: str) -> bool:
    """Check if file is a valid FIT by magic bytes."""
    signature = bytes([0x53, 0x49, 0x4D, 0x50, 0x4C, 0x45, 0x20, 0x20, 0x3D, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54])
    with open(file_path, "rb") as f:
        return f.read(30) == signature

How to validate .fit files in Node.js

Node.js
function isFIT(buffer: Buffer): boolean {
  const signature = Buffer.from([0x53, 0x49, 0x4D, 0x50, 0x4C, 0x45, 0x20, 0x20, 0x3D, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54]);
  return buffer.subarray(0, 30).equals(signature);
}

How to validate .fit files in Go

Go
func IsFIT(data []byte) bool {
    signature := []byte{0x53, 0x49, 0x4D, 0x50, 0x4C, 0x45, 0x20, 0x20, 0x3D, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54}
    if len(data) < 30 {
        return false
    }
    return bytes.Equal(data[:30], signature)
}

API Endpoint

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

See the full API documentation for all endpoints and parameters.

Frequently Asked Questions

What is a .fit file?

A .fit file is a FIT file.

What are the magic bytes for .fit files?

The magic bytes for FIT files are 53 49 4D 50 4C 45 20 20 3D 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 54 at byte offset 0. These bytes uniquely identify the file format regardless of the file extension.

How do I validate a .fit file?

To validate a .fit file, read the first bytes of the file and compare them against the known magic bytes (53 49 4D 50 4C 45 20 20 3D 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 54) at offset 0. This is more reliable than checking the file extension alone, as extensions can be renamed.

What is the MIME type for .fit files?

The primary MIME type for .fit files is application/fits.

Is it safe to open .fit files?

FIT (.fit) 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.