Image Conversion

Any Image URL.
Any Format. Instantly.

Proxy and convert images from any source to PNG, JPG, or WebP with a single URL prefix. No image server. No Sharp. No pipelines.

GET https://corsproxy.io/?key=…&output=webp&url=https://example.com/photo.jpg
PNG
Lossless output
JPG
Compressed photos
WebP
Modern web format
0 setup
No image server needed
API Reference

Query Parameters

output required
png | jpg | webp

Target image format. The source format is auto-detected.

url required
https://example.com/photo.jpg

Source image URL. Supports JPEG, PNG, GIF, WebP, SVG, and more. Must be URL-encoded.

key required
YOUR_API_KEY

Your CORSPROXY API key. Required for conversion features.

When to use each format

WebP

Best for web. 25–34% smaller than JPEG at the same quality. Use for all modern browsers.

PNG

Lossless. Use for screenshots, logos, icons, or anything needing transparency.

JPG

Widest compatibility. Use when targeting older clients or third-party systems that don't accept WebP.

Cross-Origin Image Proxy

Fetch images from third-party domains without CORS errors. Display any image in your browser app.

Format Modernization

Serve WebP to modern browsers without maintaining a separate image pipeline or CDN transform rule.

Social Media Cards

Fetch user-uploaded images from any source, convert to the required format, and embed in OG cards.

E-Commerce Thumbnails

Pull product images from supplier feeds and convert them to a consistent format and size.

No-Code Image Tools

Add image format conversion to Bubble, Webflow, or Retool without custom backend functions.

Browser Extensions

Let users export or save images from any page in any format — all client-side.

Code Examples

Ready to Copy

Fetch as Blob Browser / JS
// Convert any image URL to WebP
const imageUrl = 'https://example.com/photo.jpg';

const url = 'https://corsproxy.io/' +
  '?key=YOUR_API_KEY' +
  '&output=webp' +
  '&url=' + encodeURIComponent(imageUrl);

const res = await fetch(url);
const blob = await res.blob(); // WebP image blob
Inline <img> Tag Direct src URL
// Fetch and display a resized image
const img = document.createElement('img');

const params = new URLSearchParams({
  key: 'YOUR_API_KEY',
  output: 'webp',
  url: 'https://example.com/large-photo.png',
});

img.src = `https://corsproxy.io/?${params}`;
document.body.appendChild(img);
Next.js API Route Server-side proxy
// Next.js API route for on-the-fly conversion
export async function GET(req) {
  const { searchParams } = new URL(req.url);
  const target = searchParams.get('url');

  const res = await fetch(
    `https://corsproxy.io/?key=${process.env.CORSPROXY_KEY}&output=webp&url=${encodeURIComponent(target)}`
  );

  return new Response(res.body, {
    headers: { 'Content-Type': 'image/webp' },
  });
}

No image server needed

Ship image conversion in minutes.

Stop maintaining Sharp, ImageMagick, or a separate CDN pipeline. One URL prefix handles it all.