ONE File Documentation
Summary
A Microsoft OneNote Document is one section of a OneNote notebook: the pages of typed text, images, ink and attachments behind a single tab. The .one file is a binary revision-store container defined by [MS-ONESTORE], with the MIME type application/onenote. It begins with a 16-byte file-type GUID, not readable text, so you open it with OneNote rather than a text editor. A whole notebook is many .one sections plus a .onetoc2 table of contents.
Technical details
| Feature | Value |
|---|---|
| Full name | Microsoft OneNote Document (notebook section) |
| File extension | .one |
| MIME type | application/onenote |
| Format type | Revision-store binary container |
| Specification | [MS-ONESTORE] (published open specification) |
| Developer | Microsoft |
| Introduced | OneNote 2003; current binary since OneNote 2010 |
| Open standard | Partial (Microsoft-published spec, proprietary product) |
| Byte order | Little-endian |
| File-format GUID | {109ADD3F-911B-49F5-A5D0-1791EDC8AED8} |
| Section file-type GUID | {7B5C52E4-D88C-4DA7-AEB1-5378D02996D3} |
| Magic number (hex) | E4 52 5C 7B 8C D8 A7 4D AE B1 53 78 D0 29 96 D3 at offset 0 |
| Core structures | Header, object spaces, objects, property sets, file node lists |
| Sync design | Transaction log + revisions for incremental multi-device sync |
| Content held | Text, images, ink, audio/video, tables, file attachments |
| Table of contents | Sibling .onetoc2 file orders sections |
| Packaged notebook | .onepkg (archive of sections + TOC) |
| Related extensions | .onepkg, .onetoc2, .onenote |
| Specification URL | learn.microsoft.com/openspecs/office_file_formats/ms-onestore |
What is a ONE file?
A Microsoft OneNote Document holds one section of a OneNote notebook: the equivalent of a single tab in a binder, containing one or more pages of free-form notes. Those pages can mix typed text placed anywhere on the canvas, images, handwritten ink, audio and video recordings, tables, hyperlinks and attached files. OneNote first shipped in 2003, and the current binary form of the .one file dates from OneNote 2010, when Microsoft published the format as the [MS-ONESTORE] specification.
A notebook is not a single file. OneNote stores it as a folder: each section is its own .one file, and a .onetoc2 file records the notebook’s table of contents (which sections exist and their order). A whole notebook bundled for sharing is a single .onepkg package, essentially an archive of the section files plus their TOC. So when you meet a loose .one, you are looking at the content of one tab, and it may expect its sibling .onetoc2 to sit in context.
The revision store: why ONE is not a flat document
[MS-ONESTORE] calls a .one a revision store file, and that name explains the whole design. Unlike a Word document that is written out whole, a OneNote section is built to be edited a little at a time on several devices and merged. Rather than rewriting the file on every keystroke, OneNote appends changes and keeps older revisions, so two devices that edited the same page offline can later reconcile without losing either edit. The format is optimised for incremental, asynchronous sync, not for a human reading the bytes.
Concretely, the file is a collection of cross-referenced structures: a header, one or more object spaces (each roughly a page or page-group), objects that carry the actual content, property sets that attach attributes to objects, and a transaction log that records committed changes so a partially written file can still be recovered. Content is not stored in reading order; it is stored as objects linked by references, and the reader walks those references to reconstruct a page.
The header, guidFileType and guidFileFormat
Every revision-store file begins with a fixed Header structure, and its first fields are two GUIDs. guidFileType (16 bytes at offset 0) says what kind of file this is; for a section it is {7B5C52E4-D88C-4DA7-AEB1-5378D02996D3}, while a .onetoc2 uses a different value. guidFile then gives this specific file its own identity, and guidFileFormat is a constant, {109ADD3F-911B-49F5-A5D0-1791EDC8AED8}, present in every OneNote revision-store file to mark the format itself.
Header (start of file)
guidFileType : GUID which kind of file (section vs toc)
guidFile : GUID unique identity of this file
guidLegacyFileVersion
guidFileFormat : GUID {109ADD3F-...} constant "this is OneNote"
...
fcrTransactionLog : reference to first transaction-log fragment
fcrHashedChunkList : reference to the hashed chunk list
fcrFreeChunkList : reference to free space
...
The GUIDs are stored in the usual Windows on-disk layout: the first three components are little-endian, the last two are byte-order preserved. That is why the printed 7B5C52E4 lands in the file as the bytes E4 52 5C 7B. The header also holds a set of file chunk references (the fcr... fields) that point at the transaction log, the free-chunk list and other bookkeeping regions, so a parser can find the machinery it needs without scanning the whole file.
File node lists, chunks and object spaces
Above the raw bytes, [MS-ONESTORE] organises data into file node lists: linked lists of file node records, each a small typed entry that either carries data inline or points to a chunk elsewhere in the file. File nodes are how the format expresses “here is an object space”, “here is a revision”, “here is an object’s data” and “this reference continues in another fragment”. Because the lists are fragmented and chained, new data can be appended to the end of the file and stitched into the logical structure by adding references, which is what makes append-only editing possible.
An object space groups the objects for a logical unit such as a page. Within it, revisions capture successive states, and each object gathers its content through a property set: a list of property IDs and values that describe, for instance, a text run, an image, an ink stroke, or the position and size of a note container on the page. Reconstructing a page means selecting the current revision of its object space, reading its objects, and resolving each object’s properties, following file-node references across fragments as needed.
Section, table of contents and package
Three OneNote extensions travel together and are easy to confuse. A .one is a single section (one tab of content). A .onetoc2 is the table of contents that lists the sections in a notebook and their order; it uses the same revision-store format but a different guidFileType. A .onepkg is a OneNote Package, a bundle of the .one sections and their .onetoc2 used to email or move an entire notebook as one file; OneNote unpacks it back into loose sections. A bare section can be opened on its own, but some sections expect to be seen inside a notebook, which is why dropping the .one into a notebook folder or opening the .onepkg sometimes succeeds where the loose file stalls.
Reading a ONE without OneNote
Because the content is stored as linked objects and property sets in a binary revision store, no text editor will show your notes; you would see the header GUIDs and chunk data. The dependable readers are OneNote itself (now a free desktop app), OneNote for the web when the notebook lives on OneDrive, and free OneNote viewers built for recovery. The publication of [MS-ONESTORE] also made independent parsers possible; open-source projects exist that walk the object spaces and export a section’s pages, which is how some third-party viewers read a .one without any Microsoft code.
For sharing or archiving, OneNote’s File → Export writes the section out to PDF (a fixed copy) or DOCX (an approximated, editable document, since OneNote’s free-form page has no fixed reading flow). The mobile and Mac apps open notebooks through OneDrive rather than loose local files, so a bare .one from a Windows backup usually has to be added to a synced notebook before those apps will show it.
FAQ
What is the difference between a ONE and a ONEPKG?
A .one is a single notebook section. A .onepkg is a whole packaged notebook, an archive of all its sections plus the .onetoc2 table of contents, used to move or share a notebook as one file. OneNote unpacks a .onepkg back into individual .one sections.
Why does a ONE file start with a GUID instead of text?
The format is a binary revision store, and its header identifies the file type with a 16-byte guidFileType so any reader can confirm it is a OneNote section before parsing further. A constant guidFileFormat nearby marks it as a OneNote revision-store file in general.
Why won’t my loose section open on its own?
Sections sometimes expect to belong to a notebook. Put the .one in a OneDrive-synced notebook folder, or open the notebook’s .onepkg package, so OneNote sees the section alongside its .onetoc2 table of contents.
References
- [MS-ONESTORE] — OneNote Revision Store File Format
- OneNote — official site (free app)
- Microsoft Support — Export OneNote notes to PDF or Word
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.