If you like the Supabase storage DX, the quality issue is almost certainly in your compression step, not in Supabase itself. Default webp quality at \~75 looks fine for photos but mauls UI screenshots and any image with text. Two cheap fixes before you switch providers: bump quality to 85 and add a "do not recompress if smaller than 200kb" branch. If you still want to migrate, Cloudflare Images has the most generous free-ish tier for media-heavy apps (no egress fees), and R2 + a transform worker is the next tier up.