How to identify and remove oversized embedded images from excel workbooks
- Step 1Upload the oversized workbook — Drop the
.xlsx/.xlsmonto the Weight Analyzer. JSZip unzips it locally and walksxl/media/along with every other internal file. - Step 2Check the embedded_media category — In the By category block, look for
embedded_media. If it's high — often 70-90% — images are confirmed as your bloat source. If it's low, your weight is elsewhere. - Step 3Read the Top 10 to find the specific image — The list shows entries like
xl/media/image1.png 38912.0 KB. The biggest media file is your prime target; one or two pictures usually account for nearly all ofembedded_media. - Step 4Compress images in Excel — Open in Excel -> select any image -> Picture Format -> Compress Pictures -> untick 'Apply only to this picture' -> choose E-mail (96 ppi) or Web (150 ppi) -> also tick 'Delete cropped areas of pictures'.
- Step 5Or extract, resize, and re-insert — Rename a copy of the file to
.zip, openxl/media/, resize the large images in an editor, and re-insert at the smaller resolution. Use this when Compress Pictures isn't aggressive enough. - Step 6Save and re-run to confirm — After compressing or deleting, save in Excel and re-upload to the analyzer. The
embedded_medialine should fall sharply; the header's compressed total is your scoreboard.
Where images live and how the analyzer counts them
Everything image-related, mapped to the analyzer category it lands in. Note that drawing geometry and the actual pixels are separate files.
| Object | Internal path | Analyzer category |
|---|---|---|
| Pasted/inserted picture pixels | xl/media/image1.png, .jpg, .gif, .emf | embedded_media |
| Image anchor / position / sizing | xl/drawings/drawing1.xml | drawings |
| Chart's plotted image, if any | xl/media/... referenced by chart | embedded_media |
| Chart definition + cached data | xl/charts/chart1.xml | charts |
| Header/footer logo | xl/media/... | embedded_media |
| Cell background / theme images | xl/media/... or theme parts | embedded_media or other |
Compress Pictures resolution presets (in Excel)
The analyzer points you here; these are Excel's built-in image-compression options, not options inside the analyzer. Lower ppi = smaller file. Re-run the analyzer to measure the effect.
| Preset | Resolution | Best for |
|---|---|---|
| 96 ppi | Maximum shrink; screen-only viewing and sharing | |
| Web | 150 ppi | On-screen presentations, dashboards |
| 220 ppi | Documents intended to be printed | |
| HD | 330 ppi | Largest files; high-detail print (avoid for size) |
| Delete cropped areas | n/a (checkbox) | Removes hidden pixels of cropped images — often a big win |
Tier limits for the Excel family (real numbers)
The analyzer runs entirely in your browser, but the upload size and row caps are enforced by tier. Weight Analyzer itself requires at least Pro.
| Tier | Max file size | Row cap | Files at once |
|---|---|---|---|
| Free | 5 MB | 10,000 rows | 1 (and Weight Analyzer is gated to Pro+) |
| Pro | 50 MB | 100,000 rows | 5 |
| Pro-media | 200 MB | 500,000 rows | 20 |
| Developer | 500 MB | unlimited rows | unlimited |
Cookbook
Weight Analyzer output centred on embedded_media and the xl/media/ files. Sizes are decompressed KB. Fix notes use Excel's Compress Pictures because the analyzer is diagnostic only.
One screenshot is the entire problem
A weekly report had a pasted dashboard screenshot. The analyzer names it directly — no need to hunt through sheets.
Total workbook size: 39936.0 KB (compressed), 41010.5 KB (decompressed) By category: embedded_media 38912.0 KB (95%) worksheet_data 1536.2 KB (4%) other 562.3 KB (1%) Top 10 largest files: xl/media/image1.png 38912.0 KB Fix: select image -> Compress Pictures -> E-mail (96 ppi) + Delete cropped areas -> save. Re-run: ~2 MB.
Many small logos add up
A catalogue with one product thumbnail per row. No single image is huge, but hundreds together dominate. The analyzer's category total reveals the aggregate even when the Top 10 each look modest.
Total workbook size: 28672.0 KB (compressed), 29400.1 KB (decompressed) By category: embedded_media 26624.0 KB (91%) worksheet_data 1843.2 KB (6%) styles 932.9 KB (3%) Top 10 largest files: xl/media/image44.jpg 512.0 KB xl/media/image12.jpg 498.0 KB xl/media/image7.jpg 501.0 KB ... (260 images total) Reading: no giant file, but 260 thumbnails = 26 MB. Compress all at once via Compress Pictures (untick 'apply only to this picture').
Cropped images carry hidden pixels
Images were cropped tightly in Excel, but the original full-frame pixels were retained. 'Delete cropped areas' reclaims them — the analyzer shows the before/after.
BEFORE embedded_media 18432.0 KB (78%) AFTER (Compress Pictures + Delete cropped areas only) embedded_media 4608.0 KB (41%) Lesson: cropping in Excel hides pixels, it doesn't remove them. 'Delete cropped areas' alone cut media by 75% here.
It's NOT the images — analyzer corrects the assumption
A workbook everyone blamed on 'all those charts' was actually heavy with worksheet XML. The analyzer stops a pointless image hunt.
Total workbook size: 12288.0 KB (compressed), 47104.0 KB (decompressed) By category: worksheet_data 43008.6 KB (91%) embedded_media 1536.0 KB (3%) <- images are tiny charts 1024.2 KB (2%) styles 1535.2 KB (3%) Reading: images are 3%. Don't touch them; the bloat is sheet XML (likely whole-column conditional formatting).
Extract images by renaming to .zip
When Compress Pictures isn't enough, you can pull the raw images out of the archive to resize externally. The analyzer told you which files to grab.
Analyzer Top 10: xl/media/image2.png 22528.0 KB xl/media/image5.png 9216.0 KB Manual extract: 1. copy file -> rename report.xlsx to report.zip 2. open report.zip -> navigate xl/media/ 3. resize image2.png and image5.png in an image editor 4. in Excel, delete the old pics, insert the resized ones 5. save -> re-run analyzer to confirm
Edge cases and what actually happens
Image deleted in Excel but media still heavy
Lingers until re-saveRemoving a picture deletes its drawing anchor, but the bytes in xl/media/ can persist until a full save (and sometimes a reopen + save). If embedded_media stays high after deletion, Save -> Close -> Reopen -> Save, then re-run the analyzer.
Cropped images keep their hidden pixels
AvoidableCropping in Excel hides pixels without removing them, so a tightly-cropped image still weighs its full original size in xl/media/. Use Compress Pictures with 'Delete cropped areas of pictures' to actually drop them — often the single biggest media win.
embedded_media looks small but file is large
Look elsewhereIf embedded_media is a low percent, images aren't your problem despite intuition. The analyzer is pointing you at worksheet_data, styles, or vba_macro. Follow the top category instead of deleting pictures.
Compress vs decompress totals are nearly equal
Expected (media-heavy)PNG/JPEG are already compressed, so the ZIP can't shrink them — when media dominates, the header's compressed and decompressed totals are close. That near-equality is itself a sign the bloat is media, not XML.
EMF/vector images from pasted charts
Counted under embedded_mediaPasting a chart or shape as a picture can embed a large EMF (Windows metafile) under xl/media/. These can be surprisingly big. The analyzer counts them in embedded_media; re-paste as a normal native chart, or compress, to reduce.
Drawing XML grows with many anchored objects
Counted under drawingsHundreds of anchored images create large xl/drawings/*.xml too — counted in drawings, separate from the pixel bytes in embedded_media. If drawings is also high, you have many objects, not just a few big ones.
Image extraction is needed
By design (no extract)The analyzer reports image sizes but does not extract or download them. To pull images out, rename a copy of the .xlsx to .zip and open xl/media/ in any archive manager. The analyzer's Top 10 tells you which files to grab.
The analyzer won't remove images for me
By design (read-only)It's a diagnostic — outputType: report, no file is written. Removal is done in Excel (delete + Compress Pictures) or by extracting/re-inserting. For other heavy objects revealed in the report, use the matching sibling cleanup tool.
Encrypted workbook
Cannot read (encrypted)Encrypted .xlsx files are OLE/CFB containers, not plain ZIPs, so JSZip can't open them and no media breakdown appears. Remove the open-password in Excel and re-upload.
.xlsb binary workbook with images
LimitedIn .xlsb the data parts are binary, but xl/media/ still holds images, so embedded_media is usually accurate even though worksheet_data won't be. For the cleanest full breakdown, re-save as .xlsx.
Frequently asked questions
Why do embedded images make Excel files so big?
Excel stores images at full resolution in xl/media/, and since PNG/JPEG are already compressed, the XLSX ZIP can't shrink them further. A single 12 MP screenshot adds 8-12 MB. The analyzer sums these into embedded_media and names each file.
How do I find which image is the culprit?
Read the analyzer's Top 10 largest files. Images appear as xl/media/image1.png with their decompressed KB. The biggest entry is usually one or two pictures responsible for almost all of embedded_media.
Does the analyzer remove or extract the images?
No — it only reports sizes (outputType: report). To remove, delete the picture in Excel and run Compress Pictures. To extract, rename a copy of the .xlsx to .zip and open xl/media/ in an archive manager.
What's the fastest way to shrink image bloat?
In Excel: select an image -> Picture Format -> Compress Pictures -> untick 'Apply only to this picture' -> choose E-mail (96 ppi) -> tick 'Delete cropped areas of pictures'. This compresses all images and reclaims hidden cropped pixels in one pass.
I deleted my images but the file is still big — why?
Deleting a picture removes its anchor, but the image bytes can linger in xl/media/ until a full save. Save -> Close -> Reopen -> Save, then re-run the analyzer. If embedded_media is now low, the remaining weight is a different category.
Why does cropping not reduce the file size?
Cropping in Excel only hides pixels; the original frame is retained inside xl/media/. Use 'Delete cropped areas of pictures' in the Compress Pictures dialog to physically remove them — often the largest single saving.
Can I bulk-delete all images at once?
Excel has no one-click 'delete all images', but you can select all objects (Home -> Find & Select -> Selection Pane, or Go To Special -> Objects) and delete together. The analyzer can't do this — it's diagnostic only.
Are my images uploaded when I analyse?
No. JSZip reads the ZIP in your browser. Product photos, scanned signatures, or screenshots embedded in the workbook never leave your machine — only their byte sizes are reported on-screen.
embedded_media is small but my file is still huge — now what?
Then images aren't the issue. Follow the analyzer's top category: worksheet_data (often conditional formatting), styles (too many cell formats), shared_strings (unique text), or vba_macro (macros). The breakdown tells you where to look.
What about charts — do they count as images?
A native chart's definition counts under charts; a chart pasted as a picture counts under embedded_media. If charts is high, you have many live charts; if embedded_media is high from charts, they were pasted as images — re-insert as native charts to shrink.
What tier and file types do I need?
Pro or above; .xlsx/.xlsm only (CSV has no image folder). Pro allows 50 MB uploads, Pro-media 200 MB, Developer 500 MB — pick the cap that fits your bloated file.
After I confirm images are the bloat, what's the workflow?
Compress or delete in Excel, save, and re-run the analyzer to verify. If the report also flags vba_macro or hidden sheets, clean those with the VBA Macro Stripper and Hidden Sheet Destroyer.
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.