How to Save a Web Image as a PNG
Download an image from any website, check its real format, and convert it to PNG without losing transparency.
Short answer: right-click the image in Chrome and choose Save Image As. That downloads the file in the format the website provides. If the file is WebP or JPEG, open it in an image editor and use Export or Save As to choose PNG. Renaming image.webp to image.png does not convert the file.
1. Download the image from a website
Chrome on Windows, macOS, Linux, or Chromebook
- Open the page containing the image.
- Right-click the image.
- Select Save Image As.
- Choose a folder and filename.
- Click Save.
Chrome normally saves downloads to its default download folder unless you choose another location. The downloaded file may be PNG, JPEG, WebP, GIF, AVIF, or another format supplied by the site. See Chrome’s download instructions.
When the image is a link
If right-clicking shows Save link as instead of Save Image As, you are on a link rather than the image itself. Open the image in a new tab, then save it. Some sites also place the image behind a gallery or download button; use the site’s download control when available.
When right-click is disabled
Use the browser’s page tools or open the image URL directly:
- Open developer tools with F12 or Ctrl/Cmd + Shift + I.
- Inspect the image and look for an
<img src="...">element. - Open the
srcURL in a new tab. - Save the image from that tab.
Only download images you are allowed to use. A downloaded file may still be protected by copyright or a site’s terms.
2. Check whether the file is already PNG
Look at the filename extension, then confirm the file type in your operating system’s file information panel. A name ending in .webp, .jpg, or .jpeg is not a PNG. Changing the extension manually only changes the name; image data remains unchanged.
3. Convert the downloaded image to PNG
macOS Preview
- Open the image in Preview.
- Choose File → Export.
- Set Format to PNG.
- Choose a name and destination.
- Click Save.
Preview documents this workflow in Apple’s Mac guide. Keep the original if you may need its smaller file size or editable properties.
iPhone Preview
In the iPhone Preview app, open the image, tap the actions menu next to its filename, choose Export, select PNG, choose a location, and save. If the export offers an alpha setting, retain alpha when the image has transparent pixels. See Apple’s iPhone Preview instructions.
GIMP
- Open the image in GIMP.
- Choose File → Export As.
- Give the file a
.pngname. - Click Export, review PNG options, and export again.
GIMP separates saving its XCF project from exporting a copy to another format. Its export documentation describes the PNG workflow.
Paint.NET or Photoshop
Use File → Save As or an export command, select PNG, choose the destination, and confirm the format options. Paint.NET lists PNG among its supported formats in its File menu documentation. Photoshop documents PNG choices in its graphics-format guide.
4. Convert images from the command line or code
These examples download an image first. They do not bypass access controls, and the response must contain actual image bytes.
cURL
curl -L "https://example.com/image.webp" -o source.webp
# ImageMagick must be installed for conversion:
magick source.webp output.png
Python
import io
import requests
from PIL import Image
url = "https://example.com/image.webp"
response = requests.get(url, timeout=30)
response.raise_for_status()
image = Image.open(io.BytesIO(response.content))
image.save("output.png", format="PNG")
Install dependencies with pip install requests pillow. Use RGBA or preserve the source mode when transparency matters; Pillow generally keeps an alpha channel when exporting an image that has one.
Node.js
import { writeFile } from "node:fs/promises";
const source = "https://example.com/image.webp";
const response = await fetch(source);
if (!response.ok) throw new Error(`Download failed: ${response.status}`);
const bytes = new Uint8Array(await response.arrayBuffer());
await writeFile("source.webp", bytes);
console.log("Downloaded source.webp");
For conversion in Node.js, pass the downloaded file through an image library such as Sharp, then write PNG output:
import sharp from "sharp";
await sharp("source.webp").png().toFile("output.png");
5. Preserve transparency and image quality
- Transparency: PNG supports an alpha channel. Make sure your editor exports RGBA or keeps transparency enabled.
- Color: Converting to PNG does not restore detail lost from a compressed JPEG.
- Animation: A normal PNG is not an animated format. Converting an animated GIF or WebP may export only one frame unless your tool supports animated PNG.
- Metadata: Editors may remove EXIF data, color profiles, or other metadata during export.
- File size: PNG is often larger than WebP or JPEG for photographs. It is usually a better fit for screenshots, diagrams, logos, and images with flat colors.
6. Capture a page image as PNG without browser setup
If you need a PNG of a complete webpage rather than the original image file, ScreenshotNeo captures a URL through its screenshot API. It can load lazy images, remove cookie banners, newsletter popups, and chat widgets before capture, and return PNG, JPEG, WebP, or PDF.
Or skip the browser setup
Use the API endpoint documented at ScreenshotNeo’s API docs:
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
import requests
r = requests.get("https://api.screenshotneo.com/v1/shot", params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"}, timeout=90)
open("shot.webp", "wb").write(r.content)
const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
if (!res.ok) throw new Error(`Screenshot failed: ${res.status}`);
const fs = await import('node:fs/promises');
await fs.writeFile('shot.webp', new Uint8Array(await res.arrayBuffer()));
Cookie banners, popups, and chat widgets are removed before the shot. Bot checks, blank pages, timeouts, failed loads, and cache hits are never billed; response headers report the page verdict and whether the shot was billed. An MCP server lets AI agents use take_screenshot, get_page_info, and capture_pdf. The free plan includes 1,000 screenshots a month with no card, and paid plans start at $5 for 3,000 shots.
Create a free ScreenshotNeo account to start.
7. Troubleshooting
| Problem | Cause | Fix |
|---|---|---|
| The file downloaded as WebP | The site served WebP. | Open it in Preview, GIMP, Paint.NET, Photoshop, Pillow, or Sharp and export as PNG. |
| Renaming the extension did not work | Renaming does not change encoded data. | Use an actual export or conversion command. |
| The saved image is blurry | You saved a thumbnail or a lower-resolution responsive variant. | Open the image itself, inspect its URL, or locate the original source in page markup. |
| Transparency became white | The editor flattened the alpha channel. | Export as RGBA PNG and keep transparency enabled. |
| The browser saved an HTML file | The URL returned a page, redirect, login screen, or error. | Open the URL in a tab, confirm it displays an image, and retry with the final image URL. |
| Python reports an unidentified image | The response is not image data or is incomplete. | Call raise_for_status(), inspect Content-Type, and save the response for inspection. |
| The screenshot API returns an error | Invalid key, inaccessible URL, or a page that failed to load. | Check the key and URL, then inspect X-Page-Verdict and X-Billed headers. |
8. Performance, reliability, and cost notes
- Downloading the original file is faster and preserves its native pixels; converting adds CPU time and a second output file.
- PNG encoding is lossless but can create large files. Resize before export when the image will be displayed at a smaller size.
- For repeatable page captures, wait for a selector, a delay, or network idle so lazy content has loaded.
- Cache a converted PNG when the source URL and image content are unchanged.
- ScreenshotNeo supports a cache TTL you choose, custom headers and cookies, device and viewport settings, element or full-page capture, and asynchronous jobs for longer workflows.
9. FAQ
Is PNG better than WebP?
Neither is always better. PNG is useful for transparency, screenshots, and sharp graphics. WebP is often smaller for photographs and web delivery.
Can I save an image as PNG directly from Chrome?
Only when the website supplies PNG data. Chrome’s save command downloads the supplied format; it does not guarantee conversion.
Will converting JPEG to PNG improve quality?
No. PNG prevents additional lossy compression after conversion, but it cannot restore detail already lost in the JPEG.
Why is my PNG larger than the original?
PNG uses lossless compression and is often larger for photographs or complex images. Resize it or keep the original format when PNG is unnecessary.
Can I convert a webpage screenshot to PNG?
Yes. Capture the page with a browser tool or an API such as ScreenshotNeo, then request PNG output or convert the returned image locally.


