What is an .aup4 file?
An .aup4 file is the project format Audacity 4.0 introduced on 3 September 2026. It is one SQLite database holding your audio as thousands of small blocks plus a compact document describing the tracks. Here is what is inside it, what changed from .aup3, and what can open one.
What is an .aup4 file and what opens it?
An .aup4 file is an Audacity 4 project: a single SQLite database that holds your audio as immutable blocks of raw samples plus a binary-encoded XML document describing tracks, clips, trims and envelopes. Audacity 4.0 and newer opens one natively; Audacity 3 cannot, because both the database stamp and the document's format version are newer than it accepts. No media player can open one, because there is no continuous audio stream inside. A browser tool that understands the format, or Audacity 4 itself, is what reads it.
.aup3 vs .aup4
| .aup3 | .aup4 | |
|---|---|---|
| Written by | Audacity 3.0 to 3.7 | Audacity 4.0 and newer |
| Opens in | Audacity 3 and Audacity 4 (4 converts it to .aup4 on open, one way) | Audacity 4 only — Audacity 3.7 refuses it |
| Container | SQLite 3 database | SQLite 3 database (same design) |
| Database version stamp (user_version) | The Audacity 3 build that saved it, e.g. 3.7.9 | The Audacity 4 build that saved it, e.g. 4.0.0 |
| Document version attribute | 1.3.0 — unchanged since the .aup era | 2.0.0 |
| Tables | project, autosave, sampleblocks | project, autosave, sampleblocks, plus project_history (earlier saves) |
| Audio storage | Immutable sample blocks: 16-bit, 24-bit in four bytes, or 32-bit float | Identical — the blocks are the same bytes |
| Clip fields | Offset, trims, envelope; stretch ratio and pitch shift from 3.4 | Adds group id, clip tempo, a stretch-to-project-tempo flag and selection state |
| Colour | A palette index (colorindex) on the track | A palette index on every clip as well; pre-release 4.0 builds wrote a hex color string, which the release does not |
| Unsaved working copy | .aup3unsaved | .aup4unsaved |
| Going back | Not needed | Rewrite the two version stamps and drop the Audacity 4 fields; the audio is untouched |
Drop any .aup4 or .aup3 project to see what it holds.
Read the track list, sample rate, block count and stored format.
Play the mix and export it if that is all you needed.
Follow the links below to convert, downgrade or recover the project.
What is an .aup4 file?
If you have just updated Audacity and your projects have a new extension, nothing is wrong: Audacity 4 opens .aup3 projects and converts them to .aup4 as it does so, leaving the original file untouched. The conversion is one way, though, and that is the part worth knowing before you save. This page explains the format itself, and the tool above will open either version so you can hear what a file contains before deciding anything.
On a Mac? Audacity's own recovery utility only gained a macOS build in January 2026, and it is still a terminal program that asks for about four times the project's size in free space. Everything on this page runs in the browser instead, on any operating system.
Inside the file, table by table
`project` holds two blobs: a dictionary that assigns a two-byte id to every element and attribute name used in the document, and the document itself as a stream of typed tokens referencing those ids. It is XML in structure — a `project` root, `wavetrack` children, `waveclip` and `sequence` below them — but stored in a form that is fast to write after every edit.
`autosave` has the same two columns and holds the state of the project including unsaved changes. When Audacity starts and finds a row there, it offers to recover. A cleanly saved project leaves the table empty.
`sampleblocks` is where the audio lives: a row per block with the sample format, three summary statistics, two pre-computed waveform summaries at different zoom levels, and the raw samples. The summaries are what makes Audacity's waveform draw instantly on a long project, and they are why a viewer can show a waveform without decoding every sample.
`project_history` is new in Audacity 4: a few generations of the document with the time each was saved, so a project whose current document has gone bad can be rolled back to a previous one without touching the audio.
- Extension
- .aup4 (Audacity 4.0+) · .aup4unsaved while editing
- Container
- SQLite 3, with the Audacity application id in the header
- project / autosave
- Dictionary blob plus a binary token document
- sampleblocks
- Raw samples, per-block statistics, two waveform summaries
- project_history
- Earlier saved documents, newest first (Audacity 4)
- Sample formats
- 16-bit, 24-bit in four bytes, or 32-bit float
- Predecessors
- .aup3 (Audacity 3.0–3.7) · .aup plus a _data folder (Audacity 1–2)
- Companion files
- -wal (write-ahead log) and -shm (its index) while open; merged and removed on a clean close
Sources
Where the facts on this page were checked. Audacity's code is cited at the tagged release it was read from.
- ProjectFileIO.cpp, Audacity 3.7.9 — The AUDY application id and the packed user_version stamp in the database header, AUDACITY_FILE_FORMAT_VERSION 1.3.0, and the refusal of any project whose version stamp is newer than the running build.
- ProjectFileIO.cpp, Audacity 4.0.0 — AUDACITY_FILE_FORMAT_VERSION 2.0.0, and the project_history table, which keeps the last ten saved documents (kProjectHistoryDepth).
- ProjectSerializer.cpp, Audacity 4.0.0 — The binary XML stream: a dictionary of two-byte name ids and the 17 field types (16 in Audacity 3, plus the blob type Audacity 4 added). Strings are stored in the writing platform's native width, two or four bytes per character.
- WaveClip.cpp, Audacity 4.0.0 — The clip attributes Audacity 4 writes: offset, trims, stretch and tempo fields, groupId, clipTempo, clipStretchToMatchTempo, isSelected, and a per-clip colorindex.
- SqliteSampleBlock.cpp, Audacity 3.7.9 — The sampleblocks columns — sampleformat, summin, summax, sumrms, summary256, summary64k, samples — and silence encoded as a non-positive block id.
- SampleFormat.h, Audacity 3.7.9 — The three sample formats and their codes: int16 0x00020001, int24 0x00040001, float 0x0004000F, with the byte width packed into the upper sixteen bits.
- SQLite database file format — The database header layout: user_version at byte offset 60, application_id at byte offset 68, and the file-format read and write version bytes at offsets 18 and 19, which are 1 for a rollback journal and 2 for WAL; every Audacity project carries 2. The WAL header magic 0x377f0682 / 0x377f0683 is what identifies a dropped -wal file.
- Audacity 4.0.0 release notes — The .aup4 format, the one-way conversion of .aup3 projects, and the features not in 4.0.
- audacity-project-tools README (Audacity) — Blocks of up to 1 MB holding about five seconds of mono audio at default settings, never updated in place, so block ids are not contiguous within a track.
- Audacity pull request 11985: decode command-line arguments as UTF-8 — Audacity 4.0.0 on Windows mangles a project path containing characters outside the system ANSI code page before opening it, so the project is reported as unreadable or missing; the file is intact, and macOS and Linux are unaffected. Approved 10 September 2026, merged into master on 15 September, and shipped in Audacity 4.0.1 on 30 September.
- Audacity issue 12124: an .aup3 with a Japanese name fails in Audacity 4 on Windows 11 — The same refusal on an existing .aup3 opened for conversion; renaming the file to ASCII made it open and convert.
- Audacity pull request 12115: fix codepage conversion issues — The maintainers' wider Windows code-page fix (recent-files records, metadata, export errors, preset names, ffmpeg path), approved 11 September 2026, merged into master on 17 September and shipped in Audacity 4.0.1 on 30 September; it does not change the command-line parser.
- Audacity 4.0.1 release notes — Released 30 September 2026; lists the fix for opening projects and files with non-ASCII characters in their name or folder, so updating from 4.0.0 is the cure.
- DBConnection.cpp, Audacity 4.0.0 — journal_mode = WAL with wal_autocheckpoint = 0 on the project connection, Audacity's own checkpoint thread driven by sqlite3_wal_hook, and the truncating checkpoint on close that moves the log into the project file — unchanged from Audacity 3.7.9.
- SQLite: Write-Ahead Logging — The -wal and -shm files exist while a WAL-mode database is open, are checkpointed and deleted when the last connection closes, and must be kept with the database: separating them can lose committed transactions.
Questions about the format
Q. What player can play an .aup4 file?
No audio player, because an .aup4 is not an audio file. Its first 16 bytes are "SQLite format 3" and a zero byte — it is a database — and the recording sits in its sampleblocks table as separate blocks of raw samples, with their order, trims and volume envelopes in a separate project document, so there is no single stream for a player to decode. Tried on 11 October 2026 with Audacity's own test project clips4.aup4: FFmpeg 7.1.1's ffprobe answers "Invalid data found when processing input" and macOS Core Audio's afinfo "AudioFileOpenURL failed", and an .aup3 gets the same two answers. To listen, open it in Audacity 4, or drop it on this page: the mix plays in the browser, and a project up to 256 MB is saved as MP3 or WAV free.
Q. Is .aup4 different from .aup3 internally?
The storage design is the same — an SQLite database with a document table and a sample-block table. Audacity 4 raised the format version, added a table of earlier saves, and added clip fields: groups, a per-clip tempo, a stretch-to-tempo flag, a selection flag, and a colour index on each clip.
Q. Can I convert .aup4 back to .aup3?
Not in Audacity — the conversion is one way. The downgrade page here rewrites the two version stamps Audacity 3.7 checks and drops the fields it has never seen, keeping the audio unchanged.
Q. Can I open an .aup4 or .aup3 file on an Android phone?
Yes, in Chrome on Android — projects have been opened and exported to MP3 here that way. Audacity itself has no phone version (its downloads are for Windows, macOS and Linux only), so on a phone a project is opened in the browser instead. Save the project file somewhere the Files app shows it, such as Downloads, and choose it from there. A project the phone can hold is read into the tab's memory whole, which needs roughly twice its size free; a larger one is read from the file a piece at a time instead, so it still opens and plays — that is also why the file should sit in Downloads rather than be picked straight from an email or a cloud app, which can hand the browser a copy it may read only once.
Q. What is an .aup4unsaved file?
The same database, written while you work. Audacity keeps unsaved changes in the file's autosave table and names the temporary file with that extension; after a crash it offers to restore from it. This page reads those too.
Q. What are the .aup4-wal and .aup4-shm (or .aup3-wal and .aup3-shm) files next to my project?
SQLite's write-ahead log (<name>-wal) and its shared-memory index (<name>-shm), which exist while the project is open. Audacity turns on WAL mode with SQLite's automatic checkpointing off and runs its own checkpoint thread, so edits are committed to <name>-wal first and copied into the project file in passes; closing the project forces the final copy, after which SQLite removes both files. A -wal beside a closed project means the close never completed — a crash, a kill, or a disk that filled up — and it still holds edits the .aup4 does not: keep it next to the project, move the two together, and let Audacity open the project once. Every Audacity project is stamped as a WAL-mode database (header bytes 18 and 19 are 2), so any SQLite tool that opens one normally creates the pair; Audacity 4's own thumbnail reader opens the file read-only with immutable=1 to avoid that, and this site reads only the bytes of the file you drop.
Q. Why is my project file so much larger than the audio?
Because sample blocks are never edited in place. Every change writes new blocks and leaves the old ones behind until the project is compacted, so an afternoon of editing can multiply the file size. Rebuilding a project here drops every block no clip references.
Q. Why does Audacity 4.0.0 on Windows say my .aup4 cannot be read or found?
Check the path before suspecting the file. Audacity 4.0.0 on Windows decodes a project path passed on the command line with the system ANSI code page instead of UTF-8, so a file name or folder containing Cyrillic, Japanese, Hebrew or accented characters is mangled and the project is reported as unreadable or missing — an accented parent folder is enough, and an .aup3 you are opening for conversion fails the same way (issue 12124: 録音テスト.aup3 refused, test.aup3 converted). The parser fix, Audacity pull request 11985, was merged into master on 15 September 2026, and the maintainers' broader code-page fix, pull request 12115, on 17 September; both shipped in Audacity 4.0.1 on 30 September 2026, so updating fixes it. On 4.0.0, move the project to an ASCII-only path or open it from File → Open with no other project open. The file itself is fine, and opens here regardless of its path.
Free to open, play and export the stereo mix for projects up to 256 MB; larger projects still open and play free, and downgrading to .aup3 is free up to the same size. Recovery, per-track stems, and exports or downgrades above that size are a one-time $19 license — no subscription, no recurring fees.
Every job an Audacity project needs
Same local-first engine, one page per task.