How to filter icons, tracking pixels, and tiny images from results

On this page
- Why tiny files appear
- Start with dimensions
- Use aspect ratio
- Read filenames and paths
- Group by hostname
- Separate page content from page furniture
- Recognize tracking pixels
- Handle SVGs carefully
- Remove exact duplicate URLs
- Detect duplicate files behind different URLs
- Score candidates instead of using one hard rule
- A practical cleanup workflow
- Different jobs need different filters
- Check placeholders after lazy loading
- Privacy and terms
- A useful filter is one you can explain
A website image scan rarely returns a neat folder of photographs. It returns everything the rendered page treated as an image: logos, avatars, favicons, spinner GIFs, transparent spacers, one-pixel tracking requests, thumbnails, duplicate responsive variants, and the content images you actually wanted.
The messy result is not necessarily a bad scan. Modern pages use images for many jobs. The useful work begins when you classify the files by role instead of downloading every URL.
No single filter is reliable. A minimum-width rule can remove tracking pixels, but it can also delete legitimate icons and product swatches. A hostname rule can isolate a CDN, but the same CDN may serve both content and interface graphics. A good cleanup process combines several weak signals and keeps uncertain files for review.
Why tiny files appear
Common small resources include:
- Analytics and email tracking pixels
- Social avatars
- Favicons and app icons
- UI controls
- Loading indicators
- Decorative separators
- Product swatches
- Badge graphics
- Placeholder images
- SVG sprites
Some are visible. Others are transparent or placed off-screen. A rendered browser may still request them, so a network-aware extractor can report them.
Start with dimensions
Width and height are the fastest first pass. A 1 by 1 GIF is unlikely to be a hero photograph. A 16 by 16 PNG is probably a favicon or interface icon.
A practical classification might be:
| Dimensions | Likely role | Action |
|---|---|---|
| 1 to 4 pixels | Tracking or spacer | Exclude unless debugging analytics |
| 8 to 64 pixels | Icon, avatar, swatch | Review by use case |
| 65 to 299 pixels | Thumbnail or interface asset | Group separately |
| 300 pixels and above | Content candidate | Keep for further checks |
These are examples, not universal rules. A high-density icon can be 256 pixels. A small editorial illustration can be meaningful. Store dimensions, then combine them with other evidence.
Use aspect ratio
Extreme ratios often reveal tracking beacons, separators, or sprite strips. A 1 by 600 image is unlikely to be a normal photograph. A very wide file may be a banner or a sprite sheet.
Do not automatically discard wide assets. Social preview images, headers, and panoramas are legitimate. Compare the ratio with the page role and filename.
Read filenames and paths
Useful clues include:
/icons/
/avatars/
/analytics/
/tracking/
/ui/
/sprites/
pixel.gif
spinner.svg
favicon.ico
placeholder.webp
Path rules work best on a site you control because you understand its conventions. Third-party pages can use hashed filenames with no readable clues.
Create exclusion patterns conservatively and log what they remove. A blanket rule against /icons/ is wrong if your authorized migration includes the complete design system.
Group by hostname
Content images may live on a media CDN, while analytics requests come from unrelated domains. Group URLs by hostname and count them.
On an owned site, expected hosts should be documented. An unfamiliar domain deserves investigation, especially if it receives unique identifiers. For a content extraction task, you can usually exclude known analytics and advertising hosts.
Do not use hostname as a copyright decision. A CDN host does not tell you who owns every file it serves.
Separate page content from page furniture
The DOM location provides a strong signal. Images inside an article, product gallery, portfolio grid, or media attachment are more likely to be content. Images in the navigation, footer, cookie banner, share controls, or recommendation widgets are page furniture.
A selector-aware inventory can record the nearest meaningful container. For example:
main article img
.product-gallery img
header img
footer img
This is more reliable than judging a URL in isolation.
Recognize tracking pixels
Tracking images are often tiny or transparent and may include long query strings. They can record an email open or page event when requested.
Common clues:
- One-pixel dimensions
- No meaningful visual preview
- Analytics or campaign hostname
- Query parameters containing event or recipient identifiers
display:none, zero opacity, or off-screen positioning
Never publish raw tracking URLs in an audit report if they contain personal identifiers or tokens. Redact query values and document the provider and purpose.
Handle SVGs carefully
An SVG may have tiny declared dimensions but remain perfectly sharp at any size. It could be a logo, interface icon, illustration, or entire sprite system.
If your goal is a photo collection, place SVGs in a separate review group rather than deleting them. If your goal is a site migration, they may be essential.
The SVG sprites and web icons guide explains inline symbols, external sprites, and icon fonts.
Remove exact duplicate URLs
Normalize safe differences before comparing:
- Resolve relative addresses.
- Remove URL fragments when they do not change the resource.
- Decode equivalent URL escapes consistently.
- Keep query parameters unless you know they are tracking-only.
Do not strip every query string. Image CDN parameters can change dimensions, crop, quality, and format. The CDN parameter guide explains which differences may be meaningful.
Detect duplicate files behind different URLs
Two addresses can return identical bytes because of cache-busting parameters, mirrors, or repeated CMS uploads. Compute a cryptographic hash after download to find exact matches.
Visually similar derivatives require perceptual hashing or image comparison. A thumbnail and original should usually be grouped, not treated as identical. Keep the largest useful source and record the relationship.
Read how to find duplicate images across a website before deleting files from storage.
Score candidates instead of using one hard rule
For a general photograph extraction, give positive points for:
- Located inside main content
- Width above 600 pixels
- Photo format such as JPG, WebP, or AVIF
- Appears in a gallery or article figure
- Has meaningful alt text
Give negative points for:
- One-pixel dimensions
- Analytics hostname
- Interface directory
- Transparent empty preview
- Repeated on every page template
Review files near the threshold manually. This approach is easier to tune than a brittle chain of exclusions.
A practical cleanup workflow
- Export the URLs with source page, dimensions, format, and DOM location.
- Split by hostname and identify known analytics or advertising sources.
- Quarantine one-pixel and transparent files.
- Separate SVG and icon formats from raster photographs.
- Group responsive and CDN variants.
- Hash downloaded candidates for exact duplicates.
- Preview uncertain groups.
- Keep a log of every rule and removed count.
Use the ExtractPics image extractor to collect rendered page images, then apply filters in the results before downloading. For large projects, export a manifest and process it reproducibly rather than making one-off selections.
Different jobs need different filters
For a product-photo backup, exclude theme icons but keep variant swatches if they are operational data. For an accessibility audit, keep tiny meaningful icons because their alt treatment matters. For a redesign inventory, preserve logos, backgrounds, favicons, and social images as separate categories.
Write the task at the top of your filter configuration. "Remove everything under 200 pixels" has no meaning until you know what the inventory is for.
The website image inventory guide provides roles that work across redesign and migration projects.
Check placeholders after lazy loading
A tiny transparent file may be the initial src, while the real address waits in data-src. Filtering the placeholder before the page renders can make it look as though the image is missing.
Load and scroll the page first. Then use currentSrc and computed styles. See how to extract lazy-loaded images for a full workflow.
Privacy and terms
An extraction manifest can contain tracking identifiers, signed URLs, and private query values. Treat it as potentially sensitive. Redact tokens before sharing and avoid uploading it to public issue trackers.
Use filtering on pages you own, are authorized to audit, or may lawfully access. Removing a tracking pixel from your download list does not grant rights to the remaining photographs. Verify ownership and licensing before reuse.
A useful filter is one you can explain
A noisy result is normal. The page uses images for interface chrome, identity, tracking, decoration, and content, and the extractor cannot know which role matters to you.
Combine modest filters instead of betting everything on one size cutoff. Keep an "unsure" bucket and look at what your rules remove. A product backup should not be filtered like an accessibility audit, and neither should be filtered like an icon migration. If you cannot explain why a file was excluded, the rule is probably too aggressive.
Related posts
Why Download All misses images in infinite-scroll galleries
Learn why a gallery looks complete on screen while an extractor sees only the first batch, and how to load the rest reliably.
How to build a website image inventory before a redesign
A reusable inventory process for teams preparing to redesign, migrate, archive, or clean up an image-heavy website.
How to find duplicate images across a website
Learn why duplicate images hide behind different filenames and CDN URLs, then choose the right detection method for cleanup.