How to delete every cell comment and note from an excel workbook
- Step 1Work from a copy of the workbook — The purge is irreversible — the comment parts are deleted, not hidden. Duplicate the original first so you keep a reference copy with the annotations intact.
- Step 2Open the Comment & Note Purger and sign in to a Pro account — The tool is gated to Pro tier and above (Free is blocked). Pro covers files up to 50 MB; Pro-media up to 200 MB; Developer up to 500 MB. The purger has no options to configure — there is nothing to tick.
- Step 3Drop the .xlsx or .xlsm onto the dropzone — The file picker accepts spreadsheet extensions, but the engine works on the OOXML ZIP structure of an
.xlsx/.xlsm. A legacy.xls(binary) or.ods(OpenDocument) will not contain thexl/commentsparts this tool targets — re-save those as.xlsxin Excel first. - Step 4Let the single pass run — JSZip loads the archive, removes every
xl/comments*,xl/threadedComments/*, andxl/persons/*part, strips the matching<Relationship>and<Override>entries, and clears<legacyDrawing/>markers from each sheet. It runs in milliseconds for typical files. - Step 5Read the parts-removed count — The result panel reports a
change(s)figure — this is the number of OOXML parts removed (each comments file, each threadedComments file, each persons file), not a per-comment tally. A workbook with notes on three sheets typically shows 3+ changes. - Step 6Download and verify in Excel — Download
yourfile-no-comments.xlsx, open it, and check Review → Notes and Review → Comments — both panes should be empty across every sheet, and no red corner triangles remain.
What the purger removes vs. leaves
The tool deletes annotation OOXML parts and their references only. Everything else in the workbook is preserved exactly.
| Workbook element | Stored in | Action |
|---|---|---|
| Legacy Notes (yellow sticky boxes) | xl/comments1.xml, xl/comments2.xml, … | Removed — part deleted |
| Threaded Comments (Excel 365 reply chains) | xl/threadedComments/threadedComment1.xml, … | Removed — part deleted |
| Comment author / person records | xl/persons/person.xml | Removed — part deleted (author names + IDs gone) |
| Cell values, formulas, shared strings | xl/worksheets/*.xml, xl/sharedStrings.xml | Preserved untouched |
| Number formats, styles, conditional formatting | xl/styles.xml, worksheet XML | Preserved untouched |
| Data-validation input/error messages | <dataValidation> in worksheet XML | Preserved (separate object — not a comment) |
| Charts, pivot tables, defined names | xl/charts/*, xl/pivotTables/* | Preserved untouched |
Tier limits for the Comment Purger (excel family)
Real limits from the tier configuration. The purger itself requires Pro; Free has no access regardless of file size.
| Tier | Max file size | Row limit | Files per run | Purger access |
|---|---|---|---|---|
| Free | 5 MB | 10,000 | 1 | Blocked (Pro-gated) |
| Pro | 50 MB | 100,000 | 5 | Yes |
| Pro-media | 200 MB | 500,000 | 20 | Yes |
| Developer | 500 MB | Unlimited | Unlimited | Yes |
Cookbook
Concrete before/after looks at the actual OOXML changes. The 'code' blocks show the ZIP-part view, not spreadsheet rows — that is where comments physically live.
A note that survived 'Delete' is actually still in the file
Right-clicking a cell and choosing Delete Note removes the visible box, but Excel sometimes leaves an orphaned comments part referenced from the worksheet rels. This tool deletes the part and the reference together, so nothing lingers.
Before (unzip yourfile.xlsx): xl/comments1.xml <- 'check with John before sending' xl/worksheets/_rels/sheet1.xml.rels -> references comments1.xml [Content_Types].xml -> Override for /xl/comments1.xml After purge (unzip yourfile-no-comments.xlsx): (xl/comments1.xml deleted) sheet1.xml.rels -> comments relationship removed [Content_Types].xml -> Override removed Result panel: "3 change(s)"
Mixed workbook: legacy Notes on Sheet1, threaded Comments on Sheet2
Older models often carry both annotation types after years of editing across Excel versions. A single purge clears both — you do not run the tool twice.
Before: xl/comments1.xml (Notes on Sheet1) xl/threadedComments/threadedComment1.xml (Comments on Sheet2) xl/persons/person.xml (3 authors) After purge: all three parts removed Result panel: "3 change(s)" Review > Notes: empty. Review > Comments: empty.
Author names hide in xl/persons even after comments look gone
Threaded comment text can be deleted in Excel while the person record that names the author remains. The purger always removes xl/persons/ so the author identity goes too.
xl/persons/person.xml (excerpt):
<person displayName="Jane Doe"
userId="jane.doe@company.com" .../>
After purge: xl/persons/person.xml deleted.
No author name or account ID remains in the workbook.Confirming the result without Excel
Auditors can verify a purge by inspecting the ZIP directly. After purging there should be zero comment/threadedComments/persons entries.
# any zip lister, e.g. on the downloaded file unzip -l yourfile-no-comments.xlsx | grep -Ei 'comments|persons' # (no output = clean) # the original still shows them: unzip -l yourfile.xlsx | grep -Ei 'comments|persons' # xl/comments1.xml # xl/persons/person.xml
Pre-share hygiene chain
Comments are one of several residue types. Chain the purger with sibling vault tools for a fully sanitised deliverable.
1. Comment & Note Purger -> strip notes/comments/authors 2. /excel-tools/excel-app-metadata-wiper -> wipe app + last-author metadata 3. /security-tools/office-doc-property-wiper -> wipe core doc properties 4. /excel-tools/excel-hidden-sheet-destroyer -> remove hidden/very-hidden sheets
Edge cases and what actually happens
Free tier user tries to run the purger
Rejected — Pro requiredThe Comment Purger is gated behind Pro tier (isPro check in the processor). A Free account is rejected before any processing happens, regardless of how small the file is. Upgrade to Pro (50 MB / 100,000 rows) or higher to use it.
Uploading a legacy .xls binary or an .ods file
Rejected (wrong format)This tool operates on the OOXML ZIP structure of .xlsx/.xlsm. A binary .xls or an OpenDocument .ods does not contain xl/comments parts, so the purge would find nothing to remove. Re-save the file as .xlsx in Excel/LibreOffice first, then run the purger.
Data-validation input message looks like a comment but isn't removed
By designThe little prompt that pops up when you select a cell (Data → Data Validation → Input Message) is a <dataValidation> object in the worksheet, not a comment part. The purger does not touch it. If you need those gone, edit the validation rules in Excel — they are not annotation residue.
Workbook has no comments at all
No-op (safe)If there are no xl/comments*, xl/threadedComments/*, or xl/persons/* parts, nothing is removed and the result panel reports 0 changes. The output is a re-zipped but functionally identical workbook — running the purger on a clean file is harmless.
Tracked-change comments from shared-workbook mode
Not coveredThe legacy Shared Workbook feature stores change history separately from cell comments. The purger removes comment/note/person parts, not the change-tracking log. Accept or reject all tracked changes in Excel (Review → Track Changes) before purging if that history is sensitive.
Comment text references a cell with a drawing anchor
PreservedLegacy Notes are positioned by a VML/legacy drawing. The purger clears the <legacyDrawing/> and <legacyDrawingHF/> markers tied to comments so Excel doesn't warn about a missing target, but real shapes, images, and charts (full xl/drawings/) are left intact.
Macro-enabled .xlsm workbook
SupportedAn .xlsm is purged the same way — comment parts removed, output written. The output is renamed to -no-comments.xlsx. If you also need the VBA project removed, that is a separate operation handled by excel-vba-macro-stripper (Developer tier).
Very large workbook above your tier ceiling
Rejected — size limitIf the file exceeds your tier's byte limit (Pro 50 MB, Pro-media 200 MB, Developer 500 MB) it is rejected before processing. Comment purging itself is lightweight; the limit is on the upload size, so upgrade the tier rather than splitting the file.
Output won't open / Excel offers to repair
RareThe purger deliberately fixes the .rels, [Content_Types].xml, and legacy-drawing references precisely to avoid the repair prompt. If a third-party tool wrote a non-standard workbook and Excel still prompts, accept the repair — your data is intact; only the already-removed comment scaffolding was the concern.
Frequently asked questions
Does it remove the newer Excel 365 threaded comments, or only the old Notes?
Both. The tool deletes the xl/comments* parts (legacy Notes) AND the xl/threadedComments/* parts (Excel 365 threaded Comments) AND the xl/persons/* part (author records) in the same pass. There is no separate step or 'coming soon' — all three are removed today.
Will purging comments change my formulas, values, or formatting?
No. Comments live in their own OOXML parts. The purger only deletes those parts and their references. Cell values, formulas, number formats, styles, conditional formatting, charts, and pivot tables are preserved exactly.
Are there any options to configure?
No. The purger has an empty option schema — it is a single deterministic pass over the whole workbook. You upload, it removes every comment/note/person part on every sheet, and you download. There is nothing to tick or tune.
Can I keep comments on some sheets and remove them from others?
No — it is an all-or-nothing, whole-workbook purge with no per-sheet selection. If you need to keep specific comments, copy those sheets into a separate workbook, or delete the unwanted comments manually in Excel before sharing.
Is the purge reversible?
No. The comment parts are deleted from the output file, not hidden. Always work from a copy so your original (with annotations) survives. The tool also writes to a new file named yourfile-no-comments.xlsx, so it never overwrites your input.
Does it also remove the author names of the comments?
Yes. Threaded comment authors are stored in xl/persons/person.xml, which the purger always removes. So display names and account IDs of everyone who authored a threaded comment are gone, not just the comment text.
What does the 'change(s)' count in the result mean?
It is the number of OOXML parts removed — each comments file, threadedComments file, and persons file counts as one. It is not a count of individual comments. A workbook with notes on three sheets typically shows around three changes.
Will my comments be uploaded to a server?
No. The whole operation runs in your browser via JSZip. The workbook and any confidential note text never leave your machine — which is the point, since with this tool the annotations themselves are the sensitive payload.
Why does the registry say ExcelJS but you describe JSZip?
The actual purge path uses pure JSZip to strip the ZIP parts — this avoids the workbook-reconcile crashes that a full ExcelJS round-trip can cause when a comment part is referenced but removed. The result is a faster, lower-risk purge that leaves the rest of the workbook untouched.
What file types can I upload?
Use .xlsx or macro-enabled .xlsm. These are OOXML ZIP packages that contain the comment parts this tool targets. Legacy binary .xls and OpenDocument .ods are different formats — re-save them as .xlsx in Excel first.
How do I verify the comments are really gone?
In Excel, check Review → Notes and Review → Comments on each sheet — both should be empty with no red triangles. To verify outside Excel, unzip the output and confirm there are no xl/comments, xl/threadedComments, or xl/persons entries.
What else should I strip before sharing a workbook externally?
Comments are one of several residue types. Also consider excel-app-metadata-wiper for application metadata, the office-doc-property-wiper for core document properties, excel-hidden-sheet-destroyer for hidden sheets, and excel-external-link-auditor to surface links to other files.
Privacy first
Every JAD Excel tool runs entirely in your browser using SheetJS and ExcelJS. Your spreadsheets, formulas, and data never leave your device — verified by zero outbound network requests during processing.