How to Save a Webpage as a JPG in Firefox
Firefox saves screenshots as PNG in its documented workflow. Capture the page, then convert the image to JPG with built-in or free tools.
Firefox does not document a direct JPG export in its built-in screenshot workflow. Use Take Screenshot to save the visible page or the full page. Firefox downloads an image file, with Mozilla’s example filename ending in .png. Convert that PNG to JPG in an image editor or converter when JPG is required.
1. Capture the webpage in Firefox
- Open the page you want to capture.
- Right-click an empty area of the page and choose Take Screenshot. You can also press Ctrl+Shift+S on Windows or Linux, or Command+Shift+S on macOS. See Mozilla’s Firefox screenshot instructions.
- Choose one of the capture modes:
- Save full page captures the complete webpage, including content below the fold.
- Save visible captures the current viewport.
- Drag over a region to capture only that area.
- Select an automatically highlighted page element when Firefox offers one.
- Select Download. Firefox saves the image in its default download folder.
The screenshot interface captures an image. It is different from Save Page As, which saves webpage files, and from Print, which creates a print preview that can be saved as PDF.
2. Convert Firefox’s PNG screenshot to JPG
Windows
- Open the downloaded PNG in Microsoft Photos or Paint.
- Choose Save as or Save image as.
- Select JPEG or JPG, choose a filename, and save it.
macOS
- Open the PNG in Preview.
- Choose File > Export.
- Set Format to JPEG, choose a quality level, and select Save.
Linux, Windows, or macOS with GIMP
- Open the PNG in GIMP.
- Choose File > Export As.
- Change the filename extension to
.jpgor select JPEG in the file-type list. - Set the JPEG quality and export.
Command line with ImageMagick
If ImageMagick is installed, convert a file locally with:
magick firefox-screenshot.png -background white -alpha remove -alpha off -quality 90 webpage.jpg
JPG does not support transparency. The white background in this command prevents transparent areas from becoming an unexpected black background. Change 90 to a lower value to reduce file size.
3. Choose the right capture and conversion settings
| Need | Firefox capture choice | Conversion advice |
|---|---|---|
| Only what is currently on screen | Save visible | Convert the downloaded PNG to JPG. |
| The entire article or landing page | Save full page | Check the long image after conversion; very tall JPGs may be awkward for other software. |
| A specific chart, card, or paragraph | Select a region or highlighted element | Crop before exporting if you need a smaller file. |
| Sharp text and diagrams | Capture at the browser’s displayed size | Use high JPEG quality, or keep PNG when the destination accepts it. |
| Transparent background | Firefox screenshot output is documented as an image download | Use PNG when transparency matters; JPG always needs a solid background. |
JPEG uses lossy compression. Repeatedly opening and saving the same JPG can introduce additional artifacts, so keep the original PNG and make the JPG as the final export.
4. Full-page capture limitations and edge cases
- Lazy-loaded content: Some pages load images only after scrolling. A full-page screenshot may contain unloaded or placeholder content. Scroll through the page first, wait for images to appear, then capture again.
- Fixed headers and chat widgets: A sticky header or chat control can appear repeatedly or cover content. Close overlays before taking the screenshot.
- Cookie banners: Consent dialogs can cover the page. Accept, reject, or dismiss the banner before capture when the page provides those controls.
- Responsive layouts: Resize the Firefox window or zoom level before choosing Save visible. The screenshot follows the current viewport.
- Very long pages: A full-page image can be extremely tall and difficult to edit, upload, or print. Capture a region or several logical sections when a single image is not required.
- Protected or dynamic pages: Login requirements, bot checks, live dashboards, and content that changes during scrolling can produce an incomplete capture. Use the page state that should appear in the final image and recapture after it settles.
- JPG required by an upload form: Convert the PNG and verify that the resulting filename ends in
.jpgor.jpeg. Renaming.pngto.jpgdoes not convert the file.
5. Do not confuse screenshots with other Firefox save options
| Firefox command | What it creates | Use it when |
|---|---|---|
| Take Screenshot | An image of a region, element, viewport, or full page | You need a visual copy of the rendered page. |
| Save Page As | A webpage, HTML, text, or supporting files | You need to keep the page for later reading or local reference. See Mozilla’s Save Page As guidance. |
| A print preview that can be saved as PDF | You need a document layout or PDF. See Mozilla’s printing guidance. | |
| Save Image As on an image | The individual image resource | You want one image already embedded on the page, rather than a screenshot of the page. |
6. Troubleshooting
| Problem | Likely cause | Fix |
|---|---|---|
| Take Screenshot is missing | The context menu was opened over a control or an extension changed the menu. | Right-click an empty page area, use the keyboard shortcut, or open the Firefox application menu and look for the screenshot command. |
| The download is PNG, not JPG | Firefox’s documented workflow downloads PNG. | Open the PNG in Photos, Preview, GIMP, or another converter and export JPEG. |
| Only the visible part was captured | Save visible was selected. | Run Take Screenshot again and select Save full page. |
| Content is missing from a full-page image | Images or sections load lazily while scrolling. | Scroll through the page, wait for content to load, close overlays, and capture again. |
| JPG has a black background | Transparent pixels have no direct JPG representation. | Place the image on a white or other solid background before export. |
| Text looks blurry after conversion | JPEG quality is too low or the image was resized. | Export at a higher quality and keep the original pixel dimensions. |
| The upload rejects the file | The file may still be PNG, exceed a size limit, or use an unsupported color mode. | Confirm the file type in an image editor, export as standard RGB JPEG, and check the destination’s size limit. |
7. Performance, reliability, and cost
For one-off captures, Firefox is the simplest route: it is built into the browser and requires no screenshot service. Processing time and file size depend on page length, image count, viewport size, and JPEG quality. A full-page capture is usually larger and slower to handle than a viewport capture.
For repeatable work, record the URL, viewport size, zoom level, capture mode, and conversion quality. Keep the original PNG so you can produce a different JPG later without another browser capture. Do not rely on a screenshot as an archival copy of the webpage: it preserves appearance at one moment, not the page’s HTML, links, scripts, or data.
8. Or skip the browser setup
ScreenshotNeo provides a website screenshot API when you need JPG, PNG, WebP, or PDF captures in code. The API accepts one GET request with a URL. Full-page capture loads lazy images; you can also choose an element, device or custom viewport, dark mode, retina scale, custom CSS and JavaScript, waits, hidden selectors, cookies, headers, user agents, timezone, geolocation, caching, signed links, asynchronous jobs, bulk capture, and more. See the ScreenshotNeo documentation for the available parameters.
cURL:
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
Python:
import requests
r = requests.get("https://api.screenshotneo.com/v1/shot", params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"}, timeout=90)
r.raise_for_status()
open("shot.webp", "wb").write(r.content)
Node.js:
import { writeFile } from 'node:fs/promises';
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(`${res.status} ${await res.text()}`);
await writeFile('shot.webp', Buffer.from(await res.arrayBuffer()));
ScreenshotNeo removes cookie and consent banners, newsletter popups, and chat widgets before capture; each cleanup step can be turned off. Bot checks, blank pages, timeouts, failed loads, and cache hits are not billed, and the response identifies the result with X-Page-Verdict and X-Billed headers. Its MCP server lets Claude, Cursor, and other MCP clients call take_screenshot, get_page_info, and capture_pdf. The Free plan includes 1,000 screenshots per month with no card; paid plans start at $5 for 3,000 shots. Create a free ScreenshotNeo account.
9. FAQ
Can Firefox save a webpage directly as JPG?
Mozilla’s current screenshot instructions document an image download with a PNG example, not a direct JPG export. Capture first, then convert the PNG.
Is Save Page As the same as taking a screenshot?
No. Save Page As stores webpage files; Take Screenshot stores a rendered image.
Should I use PNG or JPG?
Use PNG for sharp text, diagrams, or transparency. Use JPG when the destination requires it or when a smaller photographic image is more useful.
Can I save only one element?
Yes. Firefox can select an automatically highlighted page element, or you can drag a region around it.
Why does my converted JPG look different?
JPEG compression can soften text and remove transparency. Export at high quality, keep the original dimensions, and use a solid background when needed.


