ID3 Tag Viewer & Editor

Read and edit MP3 ID3v2 tags — title, artist, album, artwork — locally

Ad placeholder (leaderboard)

Inspect and edit the ID3 metadata embedded in an MP3 — the title, artist, album, year, genre and track number that music players read. Everything runs locally in your browser: the file is parsed with the FileReader API, never uploaded, and a retagged copy is written back out as a download.

How it works

MP3 files carry two kinds of metadata. ID3v2 lives at the start of the file and is the modern standard. Its 10-byte header is ID3 followed by a version byte, a flags byte and a 4-byte synchsafe size (each byte uses only its low 7 bits, so the size is decoded as (b0 << 21) | (b1 << 14) | (b2 << 7) | b3). After the header come frames, each with a 4-character ID, a 4-byte size and the frame body. Text frames begin with an encoding byte: 0 is Latin-1 and 1 is UTF-16 with a byte-order mark.

The common text frames this tool decodes are:

TIT2 → Title        TPE1 → Artist
TALB → Album        TYER → Year (v2.3)
TDRC → Year (v2.4)  TCON → Genre
TRCK → Track        APIC → Attached picture

ID3v1 is a 128-byte trailer at the end of the file beginning with the ASCII TAG, holding fixed-width title, artist, album, year and comment fields. When no ID3v2 tag is present the viewer falls back to reading ID3v1.

Writing tags back

When you edit a field and download, the tool builds a fresh ID3v2.3 tag: for each non-empty field it emits a text frame with a Latin-1 encoding byte, computes the frame size, then wraps all frames in a header whose total size is re-encoded as a synchsafe integer. The original ID3v2 block (if any) is stripped and the audio frames are concatenated unchanged after the new tag, so the audio is bit-identical.

Tips

  • If a field looks garbled, it was likely stored as UTF-16; the tool decodes the BOM, but very old encoders sometimes mislabel encodings.
  • To strip all tags, clear every field and download — only frames with content are written.
  • Genre codes like (17) are a legacy ID3v1 numeric reference (Rock). Replace them with the plain genre name for best compatibility.
Ad placeholder (rectangle)