Originally published on DEV.to — tested with SquareImage.

I build SquareImage, a small set of in-browser square-image tools. This week I ran its make-an-image-square-without-cropping page against a marketplace question sellers keep hitting: the phone photo is neither square nor on pure white, Amazon MAIN wants both, Shopify collections look jagged when aspect ratios drift, and a centered 1:1 crop quietly deletes a third of a 3:2 product shot.

I used four large CC0 product photos (camera, running shoe, watch, leather duffel), exported real 2048×2048 JPEGs from the live tool, and checked every file in Python — including corner RGB samples for the Amazon white rule and a product-bounding-box fill % for the 85% rule.

Short version: "Square with color" set to #FFFFFF really does give corner pixels of RGB 255,255,255, keeps the whole photo, and lands at Shopify's usual 2048 square. A centered Square Crop on the same 3:2 sources keeps only 66.7% of the width. Blur pad looks nicer for social, but its corners are warm brown — it fails Amazon MAIN. And white-pad alone on a full-bleed 3:2 photo only fills about 67% of the square frame, so the Amazon 85% fill rule is a separate problem from the white-background rule.

Marketplace rules I actually checked (2026-11-05)

I only used each platform's own help pages (or, for Amazon, a Seller Central manager restatement, because the Seller Central help article itself is login-walled).

Marketplace What matters for this job Source
Shopify Best types PNG then JPEG; max 5000×5000 or 25 MP; file under 20 MB; square product images 2048×2048 usually display best; keep a consistent aspect ratio on featured/main images so collection grids align. White background is recommended in the photography guide (setup tip), not a hard RGB lock like Amazon. Product media types, Product photography
Amazon MAIN Pure white background RGB 255,255,255; product fills 85–100% of the frame; show only the product (no props/text/logos/watermarks on MAIN); ≥1000 px on the longest side for zoom; JPEG preferred. Seller Central community post by Dougal_Amazon restating the standards (discussion) — honest note: I could not quote a public G1881 help URL because it redirects behind login
Etsy Listing photos recommended ≥2000×2000; first photo ≥635×635 to avoid lower search placement; types .jpg .gif .png .svg .heic; animated GIF and transparent PNG not supported (transparency becomes black). At least one unedited photo of the actual item against a real background is required — white-pad is for other slots / other marketplaces, not a replacement for that required real photo. Image requirements, Listing image requirements / authenticity

The four samples

All CC0 from Wikimedia Commons. Non-white, busy backgrounds on purpose so the white pad is obvious:

Photo Size Bytes Aspect Author
Polaroid Land Camera Pronto flat-lay 6000×4000 6,942,650 3:2 landscape WI-Photos
Hoka running shoe (on foot, patio) 3024×4032 1,493,123 3:4 portrait Mimimccraney
Festina chronograph on wood 5616×3744 10,543,643 3:2 landscape www.Pixel.la Free Stock Photos
Leather duffel on forest floor 5472×3648 1,813,326 3:2 landscape Harsh Jadav

Total source weight: 20,792,742 bytes. These are lifestyle product photos, not Amazon-ready MAIN shots (props, outdoor ground, a foot in the shoe). I am measuring the padding math, not claiming the content rules are already satisfied.

Step 1: open the tool

Empty Make Image Square Without Cropping page

The converter runs in the browser. Modes are radio buttons: Square with blur, Square with color, Square by resizing, Square Crop. The color picker is input#background-color (default #ff0000). Size menu: 512 / 1080 / 1200 / 3000 / Original / Custom — I set Custom to 2048 to match Shopify's usual square.

Size menu open on Custom 2048

Step 2: what a centered Square Crop deletes

For any landscape W×H with W>H, a centered 1:1 crop keeps a H×H window and throws away (W−H)/W of the width. On every 3:2 sample here that is exactly 33.33% of the width gone, 66.67% kept. The portrait Hoka (3024×4032) keeps 75% of the height and loses the top and bottom 12.5% each.

Crop-loss overlay on the Polaroid flat-lay — red = deleted by a centered 1:1 crop

On the Polaroid file that means the film canister on the left and the modern lens on the right are at risk. On the watch, the strap ends go. On the duffel, the handles or the side pocket.

Polaroid loaded, Square Crop selected

Exported Square Crop → Custom 2048 → JPEG:

Photo Crop 2048 JPEG What the crop kept
Polaroid 697,723 B 66.67% of width
Hoka 838,339 B 75.00% of height
Watch 688,727 B 66.67% of width
Duffel 615,860 B 66.67% of width

Step 3: Square with color #FFFFFF

Switch to Square with color, set the picker to #ffffff, keep Custom 2048 JPEG, download.

Polaroid with Square with color and #FFFFFF selected

Corner pixels sampled at (5,5), (W−6,5), (5,H−6), (W−6,H−6) on every white export:

Photo White-pad 2048 JPEG Corner RGB (4 corners) Non-white bbox fill of frame
Polaroid 545,560 B (7.9% of the 6.94 MB source, −92.1%) (255,255,255) ×4 67.19%
Hoka 715,871 B (47.9% of source, −52.1%) (255,255,255) ×4 75.10%
Watch 402,352 B (3.8% of the 10.54 MB source, −96.2%) (255,255,255) ×4 66.89%
Duffel 409,071 B (22.6% of source, −77.4%) (255,255,255) ×4 67.09%

All four white exports are 2048×2048 JPEGs. All four have pure-white corners. The whole source photo is visible inside the square — nothing was cut.

All four products white-padded to 2048

The 85% fill catch (measured, not guessed)

Amazon MAIN wants the product to fill 85–100% of the frame. After a no-crop pad, the source photo occupies min(W,H)/max(W,H) of the square. For 3:2 that is 66.7%; for the Hoka 3:4 portrait it is 75%. None of these four lifestyle shots cleared 85% after white-pad alone.

So white-pad fixes the RGB 255 rule and the square rule, but it does not automatically fix the 85% fill rule. If your product is already small inside a loose phone frame, pad first then tighten with a square crop (or reshoot tighter). If the product already fills the short edge edge-to-edge, you still only get ~67% of a square from a 3:2 original — you need a nearer-to-square source or a deliberate zoom.

Portrait crop vs pad on the Hoka shoe:

Hoka Square Crop vs white pad

Crop fills the square but cuts the toe/heel region (25% of height gone). White pad keeps the whole shoe and ankle, with white bars left and right, at 75% fill.

Step 4: one brand solid (Shopify / Etsy catalog)

Same Polaroid file, Square with color #f5f0e8 (warm paper), Custom 2048 JPEG: 545,466 B. Corner samples after JPEG encode: (245,241,232) — within a couple of levels of #f5f0e8 = (245,240,232) because JPEG is lossy. On the watch I also tried #111111 for a dark catalog card: 399,654 B, corners (17,17,17) after JPEG.

Polaroid with brand cream pad #f5f0e8

Useful for Shopify/Etsy lifestyle grids where you want a consistent brand matte instead of pure white. Do not use a brand color for Amazon MAIN.

Step 5: why blur pad fails Amazon MAIN

Polaroid with Square with blur

Same Polaroid, Square with blur, 2048 JPEG: 593,054 B. Corner samples: (172,125,35), (7,3,0), (39,13,0), (52,19,0) — warm fairy-light brown and near-black wood, not RGB 255. Fill of non-white content is essentially 100% of the frame (the blur covers everything), which is the opposite of a white MAIN plate.

Pretty for Instagram. Automatic reject material for Amazon MAIN.

Step 6: crop vs white vs brand vs blur, side by side

Polaroid four-way: Crop, White, Brand cream, Blur

Mode Bytes Keeps full photo? Corner RGB Amazon MAIN white?
Square Crop 697,723 No (66.7% of width) scene colors No (and product is cropped)
Square with color #FFFFFF 545,560 Yes 255,255,255 Yes (white rule)
Square with color #f5f0e8 545,466 Yes ~245,241,232 No
Square with blur 593,054 Yes warm brown / black No

Step 7: simulated Shopify strip and Amazon card

Four white-padded 2048 thumbs in a simulated collection row — same 1:1 ratio, so the grid lines up the way Shopify's media docs describe when featured images share an aspect ratio:

Simulated Shopify collection strip of the four white pads

And a mock Amazon search card built from the real Polaroid white export, with the four corner swatches sampled from the file (all white):

Simulated Amazon card from the white-padded Polaroid

Blur version of the same card — the swatches are brown/black, which is the whole point:

Simulated Amazon card from the blur pad — corners fail white

Checklist I would actually use

  1. Amazon MAIN: white pad #FFFFFF + corners really read 255,255,255 + product bbox ≥85% of the square + no props/text/logos on MAIN + ≥1000 px longest side (2048 is safely above that). White-pad a loose 3:2 lifestyle shot alone is not enough for the 85% rule.
  2. Shopify: consistent 1:1 (2048×2048 is the size their media docs call out as usually best), PNG or JPEG, under 20 MB / 5000 px. Brand solid pads are fine when you want a catalog color instead of white.
  3. Etsy: keep one unedited real-background photo of the actual item for the authenticity rule; use padded squares for other listing slots or for channels that want white/square. First photo ≥635×635; prefer ≥2000×2000.
  4. Prefer Square with color over Square Crop when the product touches the short edge and you cannot afford to lose the sides. Use blurred frame only when Amazon MAIN is not the destination.

If you also need the JPEG/PNG under a shop's upload cap after padding, a related browser compressor is PixSip.

Credits

Related SquareImage writes on other platforms: Hashnode — Instagram carousel, mixed shapes to square 1080 · Medium — keep the whole subject when you force a photo to square · Blogger — a 1:1 crop deletes 44% of this wide photo.

Also useful on the product: the square image size guide and the homepage square image converter.