How to Capture an Entire Web Page in Safari
Capture a complete Safari webpage on iPhone or iPad, save it as an image or PDF, and learn what Safari on Mac can save.
On iPhone or iPad, take a normal Safari screenshot, open its thumbnail, choose Full Page, then save the result as a photo or PDF. On a Mac, Safari’s documented whole-page options are Web Archive and Page Source; they are saved-page formats rather than the iPhone and iPad Full Page screenshot interface.
1. Capture an entire webpage on iPhone
- Open the page in Safari and wait for the content you need to load.
- Take a screenshot. On Face ID iPhones, quickly press and release the side button and volume-up button together. On an iPhone with a Home button, press and release the Home and side buttons together.
- Tap the screenshot thumbnail when it appears. If it disappears, open the screenshot from Photos and use the available editing controls.
- Tap Full Page at the top of the screenshot editor. Apple documents this control for content beyond the visible screen, including an entire webpage in Safari. Apple’s iPhone guide describes the workflow.
- Review the tall preview. Drag inside it to inspect lower sections, and crop or annotate if necessary.
- Choose the save action shown by your iOS version: save the capture as a photo, or choose Save PDF to Files to create a PDF.
The regular screenshot thumbnail is saved automatically to Photos. The Full Page editor adds the longer-page preview and its save choices.
2. Capture an entire webpage on iPad
- Open the webpage in Safari.
- Take a screenshot. On iPads without a Home button, press and release the top button and either volume button. On iPads with a Home button, press and release the top button and Home button.
- Open the thumbnail, then tap Full Page.
- Scroll through the long preview, crop or annotate it, and save it as an image or PDF using the options presented.
See Apple’s iPad screenshot guide for the button combinations and Full Page workflow.
3. Save a complete Safari page on Mac
Safari for Mac documents a different approach:
- Open the page in Safari.
- Choose File > Save As.
- Choose Web Archive to save the page’s graphics and a page representation, or choose Page Source to save only the HTML source.
- Name the file, choose a location, and save it.
A Web Archive can keep links working while their destination pages remain available. Page Source contains HTML only, so it is not a visual screenshot. Safari also warns that some webpages may prevent saving items shown on the page. Apple’s details are in Save part or all of a web page in Safari on Mac.
4. Save an annotated Safari webpage as a PDF on iPhone
If you need a PDF with markup rather than the Full Page screenshot editor:
- Open the page in Safari.
- Open the page menu, tap Share, then choose Markup.
- Add annotations if needed.
- Tap the share button and choose Save to Files (shown as Save File To in Apple’s instructions), then select a folder.
Apple documents this route in Annotate and save a webpage as a PDF in Safari on iPhone.
5. Choose the right output
| Need | Safari route | Result |
|---|---|---|
| Share a visual long capture on iPhone or iPad | Screenshot > Full Page | Long image or PDF, with preview and crop controls |
| Annotate before making a PDF on iPhone | Page menu > Share > Markup > Save to Files | Annotated PDF |
| Keep a saved Mac webpage with graphics | File > Save As > Web Archive | Saved page representation and graphics |
| Inspect or keep the HTML | File > Save As > Page Source | HTML source code only |
6. Why Full Page may be unavailable or incomplete
- No Full Page tab: Confirm that the screenshot was taken in Safari and that you opened the screenshot editor. The control is part of the iPhone and iPad screenshot flow, not the Mac Save As menu.
- Content is missing below the fold: Some content loads only after scrolling, requires interaction, or is blocked by access controls. Let the page finish loading, scroll through important sections once, and capture again.
- Sticky headers or overlays appear repeatedly: Close consent dialogs, newsletter prompts, chat panels, and other overlays before taking the screenshot.
- Images look blank: Wait for lazy-loaded images to render and check your connection. A page can display placeholders until it is scrolled.
- Mac output is not a screenshot: Web Archive and Page Source are Safari’s documented Mac save formats. Use an iPhone or iPad Full Page capture for a visual long image or PDF.
- A site refuses to save content on Mac: Safari states that some webpages may prevent saving items shown on the page. You may need permission from the site or a different capture method.
7. Or skip the browser setup
For repeatable captures, automation, or pages that need a server-side workflow, ScreenshotNeo returns a PNG, JPEG, WebP, or PDF from one GET request. Before capture it accepts cookie and consent banners and removes more than 60 known consent platforms, newsletter popups, and chat widgets; each cleanup step can be turned off. Bot checks and CAPTCHAs, blank pages, timeouts, failed loads, and cache hits are not billed, and the response reports the result in X-Page-Verdict and X-Billed headers. Its MCP server provides take_screenshot, get_page_info, and capture_pdf tools for Claude, Cursor, and other MCP clients.
See the ScreenshotNeo API documentation for all options. This minimal call captures a page as WebP:
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
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(`HTTP ${res.status}`);
const body = Buffer.from(await res.arrayBuffer());
require('fs').writeFileSync('shot.webp', body);
ScreenshotNeo supports full-page capture with lazy images loaded, CSS element capture, dark mode, device presets and custom viewports, retina scale, PDF paper sizes and margins, custom CSS and JavaScript, clicks, selector waits, delays, network-idle waits, request blocking, headers, cookies, user agents, Authorization, timezone, geolocation, transparent backgrounds, resizing, TTL caching, signed links, async jobs with signed webhooks, bulk capture for up to 100 URLs per call, a usage API, and an OpenAPI specification. Parameter names used by other screenshot APIs also work, which can simplify migration.
Free usage includes 1,000 screenshots each month with no card. Paid plans start at $5 for 3,000 shots; yearly billing gives two months free, and every feature is available on every plan. Create a free ScreenshotNeo account.
8. Reliability, performance, and cost considerations
- Capture timing: On a phone or tablet, wait for fonts, images, and interactive content before taking the screenshot. For automation, use a selector wait, delay, or network-idle wait instead of a fixed guess where possible.
- Long pages: A very tall image can be difficult to share or edit. PDF is often easier for document-style reading; crop the Full Page preview when only a section is needed.
- Dynamic pages: Live feeds, rotating ads, video, and personalized content can change between captures. Record the URL and time when an exact visual record matters.
- Privacy: Avoid capturing pages containing credentials, private messages, payment details, or personal data unless your workflow is authorized and secured.
- API cost control: ScreenshotNeo bills only clean shots. Cache repeated URLs with a TTL, use element capture when a full page is unnecessary, and use bulk capture for batches of up to 100 URLs.
- Failure handling: Inspect HTTP status and the
X-Page-Verdict/X-Billedheaders, retry transient network failures with backoff, and keep the response body when diagnosing an error.
9. Troubleshooting checklist
| Symptom | Likely cause | Fix |
|---|---|---|
| Full Page is missing | Screenshot editor was not opened or capture was not made in Safari | Retake the screenshot, open its thumbnail immediately, and look for Full Page |
| Only the visible screen is saved | Standard screenshot was saved without selecting Full Page | Open the editor and select Full Page before saving |
| Lower sections are blank | Lazy loading or incomplete page load | Wait, scroll through the page, then capture again |
| Safari Mac file lacks visual layout | Page Source was selected | Choose Web Archive, or use Full Page on iPhone/iPad for a visual capture |
| ScreenshotNeo request returns an error | Invalid key, URL, or request parameters | Check the API key, URL encoding, endpoint, and response status; consult the docs |
| Automated page includes a banner or chat widget | Cleanup was disabled or the page uses an unsupported overlay | Enable the relevant cleanup options and inspect the page verdict; hide the element with a selector when appropriate |
10. FAQ
Can Safari save a full webpage as one image?
On iPhone and iPad, the Full Page screenshot flow can save the long capture as a photo where that save option is shown. On Mac, Apple’s documented Save As choices are Web Archive and Page Source.
Does Full Page work in every iPhone app?
The documented workflow is for content such as an entire webpage in Safari. Other apps may not provide a Full Page option.
Is a Web Archive the same as a PDF?
No. A Web Archive is a saved Safari page representation with graphics and links; a PDF is a page-layout document.
Can I capture only one section?
Use the Full Page preview’s crop controls for a manual section. For automated work, ScreenshotNeo can capture one element by CSS selector.
Where should I start if I need scheduled captures?
Use ScreenshotNeo’s API or async jobs with signed webhooks, then monitor the verdict and billed headers for each response.


