Why your Excel file is so large
An .xlsx workbook is a ZIP file full of XML parts, so its size is the sum of those parts. Here is what usually makes one large, and what ShrinkExcel does about each cause. The reductions that start on keep everything you can see. The ones that remove something start off, and you can switch them on under Advanced settings on the front page.
What ShrinkExcel can remove
Each one links to a page on what it removes and what it leaves alone.
Safe, on by default
- Compression Compresses the file at the tightest standard setting.
- Unused cells Removes empty cells with no value, formula or formatting of their own.
- Calculation chain Removes the saved order Excel last calculated formulas in.
- Duplicate images Stores each repeated picture once.
- Unused links Removes links to other workbooks that nothing in the file uses.
Extra, off by default
- Excess formatting Clears formatting from empty cells past your data.
- Pivot cache Removes the copy of source data each PivotTable saves.
- Stacked shapes Removes invisible shapes stacked on copies of themselves.
- Chart cache Removes the copy of values each chart saves.
- Break links Replaces formulas that read other workbooks with their values.
Formatted empty cells
Formatting a whole column, or clearing cells with Delete instead of Clear All, leaves empty cells that Excel still saves one by one, sometimes a million rows past the data.
What ShrinkExcel does. Removes empty cells whose formatting their row or column already supplies. Empty cells with their own fill or border stay. An optional reduction also clears formatting from empty cells past the last row and column with data, as Excel's Clean Excess Cell Formatting does.
Empty text placeholders
Files written by code libraries often store empty text cells between the values, which Excel drops the next time it saves.
What ShrinkExcel does. Treats a text cell with no value as empty, so it goes under the same rule as other empty cells. A cell that really holds an empty string stays, because formulas can tell the difference.
How the file is packed
An .xlsx is a ZIP of XML parts, and not every program compresses those parts as tightly as it could.
What ShrinkExcel does. Compresses every part again at the tightest standard setting, and keeps a part as it was when it was already packed smaller. On most workbooks this is where most of the saving comes from.
Pivot table caches
Every PivotTable keeps a saved copy of its source data inside the file, and separate PivotTables on the same data can each keep their own.
What ShrinkExcel does. Keeps the saved data by default. An optional reduction drops it when the source is a range, name or table in the same workbook, and has Excel rebuild it when the file opens. A PivotTable fed from another file or a connection keeps its copy.
The calculation chain
Excel stores the order it last calculated every formula in, one entry per formula cell. Formula-heavy workbooks carry a large one.
What ShrinkExcel does. Removes it unless the workbook calculates iteratively. Excel rebuilds it from the formulas.
Cached values from linked workbooks
A formula that points at another workbook makes Excel save a copy of the cells it reads, so it can show values when that file is closed.
What ShrinkExcel does. Removes links that nothing in the file reads, as Excel does when it saves. An optional reduction breaks the others as Excel's Break Link does: each formula that reads another workbook keeps the value it shows and stops updating. The copy is never dropped on its own, because a formula that reads a closed workbook with no copy calculates as zero, with no warning.
Fragmented conditional formatting
Inserting rows and pasting can split one conditional-format rule into hundreds of copies, each covering a sliver of the sheet.
What ShrinkExcel does. Keeps every rule, so editing one still changes only its own range.
Hidden and stacked shapes
Pasting from web pages and some macros leave invisible or stacked shapes behind, sometimes thousands of them.
What ShrinkExcel does. Keeps every shape by default. An optional reduction removes copies of an empty, invisible shape stacked exactly on top of each other and keeps the first. A workbook with macros is left alone, because a macro can refer to a shape by name.
Defined names
Copying sheets between workbooks brings their names along, including hidden ones and ones that point at nothing.
What ShrinkExcel does. Keeps every name.
Chart data
Every chart saves a copy of the values it plots, so a chart over thousands of rows repeats them inside the file.
What ShrinkExcel does. Keeps it by default. An optional reduction drops the copy for series on the workbook's own cells, which Excel redraws from the cells. Other apps may show such a chart empty until Excel saves the file again.
Pictures
Excel keeps a picture at its original resolution however small it is drawn, and cropping hides pixels without removing them.
What ShrinkExcel does. Keeps one copy of a picture stored more than once with identical bytes, and points every use at it. Every picture keeps its resolution.
The Power Pivot data model
Data loaded into the data model is stored inside the workbook as a compressed database, which can be most of the file.
What ShrinkExcel does. Keeps the model exactly as it is. Only its packing changes.
Drop a workbook on the front page to see which parts take up the space in yours.