Hidden Data in Excel Spreadsheets: Beyond What You Can See
Excel files contain layers of hidden data beyond the visible cells -- author names, hidden sheets, external links, and more. Here's what's hiding in your .xlsx files.
Excel files are ZIP archives full of XML
An .xlsx file is not a single binary blob. It is a ZIP archive containing dozens of XML files, each storing a different aspect of the workbook: cell data, styles, charts, metadata, relationships, and more. This structure means there are many places for data to hide — places that do not show up when you open the file and look at the grid.
Understanding what is in those XML files is the first step to understanding what you are actually sharing when you send an Excel spreadsheet.
Workbook properties
Every Excel workbook stores document properties in its XML metadata. These properties are set automatically based on your system configuration and are rarely inspected before sharing.
Core properties
- Creator — the name associated with the Microsoft account or Windows user profile that first created the file
- Last Modified By — the name of the person who most recently saved the file
- Created and Modified dates — timestamps for file creation and last edit
- Title, Subject, Category, Description — optional fields that some organizations populate through templates or document management systems
Extended properties
- Company — the organization name configured in the Excel or Office installation
- Manager — a rarely-used field that, when populated, reveals reporting structure
- Application and AppVersion — the exact version of Excel used
Business context: A financial model shared with an investor shows the Creator as an analyst at a competing firm. The Company field shows a consulting firm that the startup claimed was not involved. The Manager field reveals the name of a partner who the startup said had reviewed the model — but who is associated with a different engagement.
Hidden sheets
Excel supports three visibility states for worksheets:
- Visible — the default; the sheet tab appears at the bottom of the workbook
- Hidden — the tab is removed from view, but the sheet can be unhidden through Format > Sheet > Unhide
- Very Hidden (xlSheetVeryHidden) — the sheet does not appear in the Unhide dialog and can only be made visible through the VBA editor or by editing the workbook's XML directly
Very hidden sheets are frequently used to store lookup tables, configuration data, intermediate calculations, or sensitive reference data that powers the visible sheets. Because they do not appear in the standard Unhide menu, many users do not know they exist.
Business context: A pricing model shared with a client has a very hidden sheet named "Margin_Analysis" that contains the company's cost structure, target margins by product line, and discount thresholds. The visible sheet shows only the customer-facing prices.
Hidden rows and columns
Individual rows and columns can be hidden in Excel. Hidden rows and columns are not deleted — the data remains in the cells, it is simply not displayed. The visual indicator is subtle: a jump in row numbers (e.g., row 15 to row 25) or column letters (e.g., column D to column G).
Business context: A budget spreadsheet shared with department heads has hidden columns containing executive compensation data and hidden rows containing cost projections for a division that is being considered for divestiture.
Named ranges
Named ranges assign human-readable names to cell references. They are often used in formulas, data validation dropdowns, and VBA macros. Named ranges are defined at the workbook or sheet level and persist even if the cells they reference are on hidden or very hidden sheets.
The Name Manager (Formulas > Name Manager) lists all named ranges, including their scope and the cell references they point to. These references can reveal the existence and location of data on hidden sheets.
Business context: A named range called CompetitorPricing that references cells on a very hidden sheet immediately tells the recipient that competitive pricing data exists in the workbook, even if they cannot see the sheet.
External link references
Excel workbooks can contain links to external files — other workbooks, databases, or network paths. These links are stored in the workbook's XML and persist even if the linked files are no longer accessible.
External links reveal:
- Internal file server paths (e.g.,
\\CORPFS01\Finance\FY2025\Budget_Master_v4.xlsx) - Other users' local paths (e.g.,
C:\Users\jdoe\Desktop\Confidential_Model.xlsx) - SharePoint or OneDrive URLs that may be accessible if the recipient guesses or brute-forces the path
Business context: A workbook sent to an external auditor contains broken links to \\FINANCE-SRV\M&A\TargetCo\Valuation_Final.xlsx. The auditor can now infer the name of an acquisition target.
Cell comments and notes
Cell comments (now called "Notes" in newer Excel versions) and threaded comments store the author name alongside the comment text. Even if the comment content is benign, the author field reveals who reviewed or contributed to the workbook.
Business context: Comments on a financial model shared with a board member show notes from "External Counsel - J. Martinez" — revealing the involvement of legal counsel in what was presented as a routine financial update.
Revision tracking in shared workbooks
Excel's legacy "shared workbook" feature (now largely replaced by co-authoring) maintained a change log that recorded every cell edit: who made the change, when, the old value, and the new value. This change log was stored within the workbook file.
Even in modern Excel with co-authoring, version history through SharePoint or OneDrive tracks changes at the file level. While this history is not embedded in the .xlsx file itself, it is accessible to anyone with access to the shared location.
Custom XML parts
Excel files can contain custom XML parts — arbitrary XML data stored inside the workbook's ZIP structure. These are used by:
- Document management systems that embed classification tags, matter numbers, or client identifiers
- Add-ins that store configuration or state data
- Data connections that cache query definitions and connection strings
Custom XML parts are invisible in the Excel interface. They can only be found by inspecting the workbook's XML structure directly.
Business context: A workbook processed through a law firm's DMS contains custom XML with the firm name, matter number, client code, and document classification ("Attorney-Client Privileged"). When the workbook is shared externally, this classification metadata travels with it.
How to find hidden data in Excel files
Built-in tools
Excel's Document Inspector (File > Info > Check for Issues > Inspect Document) checks for:
- Comments and annotations
- Document properties and personal information
- Hidden rows, columns, and sheets
- Custom XML data
It does not detect very hidden sheets through the standard UI, and it may not catch all external link references or named range implications.
Structural inspection
For a thorough inspection, the workbook needs to be examined at the XML level — unzipping the .xlsx file and reading the XML files directly. This reveals:
- Very hidden sheets (the
state="veryHidden"attribute inworkbook.xml) - All external link definitions
- Custom XML parts
- Full named range definitions with scope
- Cell comment author names
Before you share
The minimum steps before sharing an Excel workbook externally:
- Check for hidden and very hidden sheets — use the VBA editor or a metadata tool, not just the Unhide menu
- Check for hidden rows and columns — select all cells and unhide, or inspect for gaps in numbering
- Review named ranges for references to sensitive data or hidden sheets
- Break external links or remove them entirely
- Remove comments or verify that comment text and author names are appropriate for external viewing
- Run Document Inspector as a baseline check
- Verify after cleaning — re-scan the file to confirm that hidden data has been removed
Purgit scans Excel workbooks for hidden metadata, hidden sheets, external links, comments, and embedded properties. It identifies what is hidden at the XML structural level and removes it with verification.
[Scan a File Free]