October DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsWindows FixRecommendedWindows errors stealing your time? Find the fix fastScan stability, cleanup and performance issues.Fix NowOctober DealsAmazon USDeal season is back - check today's better picksAmazon US: current deals, useful picks and tech finds.See Picks×
Skip to content
Mountain View desk6 min

How to Capture HTML or Website Screenshots in Google Sheets

Google Sheets displays existing images but does not render a webpage URL as a screenshot. Here are the manual, formula-based and Apps Script methods.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Google Sheets can display an image, but it does not turn a webpage URL into a screenshot by itself. For a one-off, capture the page first and insert the image. For an existing image URL, use IMAGE(). To automate screenshots from webpage URLs, use Apps Script to call a browser-based screenshot service and place the returned image in the sheet.

Can I take a screenshot of a website from its URL in Google Sheets?

Not with IMAGE(url) or IMPORTHTML() alone. IMAGE() displays an image available at an image URL; it is not a webpage renderer. IMPORTHTML() imports a table or list from an HTML page, not a visual snapshot.

As an Amazon Associate I earn from qualifying purchases.

For a screenshot, a browser renderer must load and render the page. An Apps Script request can call that renderer, receive an image, and insert it into the spreadsheet. UrlFetchApp makes HTTP/HTTPS requests; fetching a webpage directly with it does not render the page like a browser.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Choose the right way to add a screenshot

Route Best for What goes into the sheet Setup
Insert an image manually A one-off capture An image placed in a cell or over cells Lowest
IMAGE() An image already hosted at a usable direct image URL An image displayed from its URL Low
Apps Script plus a browser screenshot service Repeatable capture of webpage URLs A returned image inserted into the sheet, or an image URL displayed by a formula Higher: script, authorization, service account and provider limits

Option 1: Insert a screenshot captured elsewhere

  1. Capture the webpage using your browser or operating system’s screenshot tool.
  2. In Google Sheets, choose Insert > Image, then select an image option and choose the captured file. Sheets also documents taking a screenshot within the image-selection flow.
  3. Choose whether to place the image in a cell or over the cells. An image in a cell cannot share that cell with text; placing it over cells can preserve the grid’s text layout.

Option 2: Display an existing image URL with IMAGE()

If a cell such as A2 contains a direct URL to an image, enter =IMAGE(A2) in another cell. This displays the image; it does not capture the webpage where the image may have come from.

#1 Best Overall
Philips 24 Inch Computer Monitor FHD 100Hz VA VESA Flicker-Free, 241V8LB
  • CRISP CLARITY: This 23.8″ Philips V line monitor delivers crisp Full HD 1920x1080 visuals. Enjoy movies, shows and videos with remarkable detail
  • INCREDIBLE CONTRAST: The VA panel produces brighter whites and deeper blacks. You get true-to-life images and more gradients with 16.7 million colors
  • THE PERFECT VIEW: The 178/178 degree extra wide viewing angle prevents the shifting of colors when viewed from an offset angle, so you always get consistent colors
  • WORK SEAMLESSLY: This sleek monitor is virtually bezel-free on three sides, so the screen looks even bigger for the viewer. This minimalistic design also allows for seamless multi-monitor setups that enhance your workflow and boost productivity
  • A BETTER READING EXPERIENCE: For busy office workers, EasyRead mode provides a more paper-like experience for when viewing lengthy documents

IMAGE display modes

  • =IMAGE(A2, 1): fits the image inside the cell while preserving its aspect ratio.
  • =IMAGE(A2, 2): stretches the image to fill the cell, potentially changing its proportions.
  • =IMAGE(A2, 3): displays the image at its original size.
  • =IMAGE(A2, 4, height, width): uses the specified custom height and width in pixels.

The function does not resize the cell to fit the image. Adjust the row height and column width separately if needed. Google states that Drive-hosted URLs and SVG images are unsupported by IMAGE(), and a volatile function cannot be used directly or indirectly in the base URL.

Option 3: Automate webpage screenshots with Apps Script

For a repeatable workflow, Apps Script can send a page URL to a browser-based screenshot API and insert the returned image into a sheet. The example below assumes the service accepts a GET request with access_key and url parameters and returns an image body. Store the API key in Apps Script’s project properties rather than in a visible spreadsheet cell. Create a script property named SCREENSHOTNEO_API_KEY before running the function.

Rank #2
Philips 22 Inch Computer Monitor FHD 100Hz VA VESA Flicker-Free, 221V8LB
  • CRISP CLARITY: This 22 inch class (21.5″ viewable) Philips V line monitor delivers crisp Full HD 1920x1080 visuals. Enjoy movies, shows and videos with remarkable detail
  • 100HZ FAST REFRESH RATE: 100Hz brings your favorite movies and video games to life. Stream, binge, and play effortlessly
  • SMOOTH ACTION WITH ADAPTIVE-SYNC: Adaptive-Sync technology ensures fluid action sequences and rapid response time. Every frame will be rendered smoothly with crystal clarity and without stutter
  • INCREDIBLE CONTRAST: The VA panel produces brighter whites and deeper blacks. You get true-to-life images and more gradients with 16.7 million colors
  • THE PERFECT VIEW: The 178/178 degree extra wide viewing angle prevents the shifting of colors when viewed from an offset angle, so you always get consistent colors

Apps Script example

function insertWebsiteScreenshot() {
  const pageUrl = 'https://example.com';
  const apiKey = PropertiesService.getScriptProperties()
    .getProperty('SCREENSHOTNEO_API_KEY');

  if (!apiKey) {
    throw new Error('Set SCREENSHOTNEO_API_KEY in Script Properties first.');
  }

  const endpoint = 'https://api.screenshotneo.com/v1/shot';
  const requestUrl = endpoint + '?' + [
    'access_key=' + encodeURIComponent(apiKey),
    'url=' + encodeURIComponent(pageUrl)
  ].join('&');

  const response = UrlFetchApp.fetch(requestUrl, { muteHttpExceptions: true });
  const status = response.getResponseCode();
  if (status < 200 || status >= 300) {
    throw new Error('Screenshot request failed with HTTP ' + status + ': ' +
      response.getContentText());
  }

  const sheet = SpreadsheetApp.getActiveSheet();
  sheet.insertImage(response.getBlob(), 1, 2);
}
  1. Open the spreadsheet’s Apps Script editor and add the function.
  2. In the project settings, add SCREENSHOTNEO_API_KEY with your key as its value. Do not put the key in a cell shared with viewers.
  3. Change pageUrl to the page you want to capture.
  4. Run insertWebsiteScreenshot. On first use, authorize the script’s requested access, including external requests and spreadsheet editing.
  5. Check the active sheet: the example inserts the returned image starting in column A, row 2. Adjust the final two arguments to insertImage to place it elsewhere.

Apps Script external HTTP requests require the https://www.googleapis.com/auth/script.external_request scope. Depending on the script’s authorization configuration, add that scope in the manifest if it is not already requested. Google’s UrlFetchApp documentation describes HTTP/HTTPS fetching; the screenshot-rendering step is provided by the external service, not by Google Sheets.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Capturing many URLs

For a URL list, read the values from a range, call the renderer for each non-empty URL, and insert each returned image at a chosen row and column. Add error handling per URL so one failed capture does not stop the rest. Consider the service’s usage limits and your Apps Script execution limits before processing a large sheet; neither should be assumed unlimited.

Rank #3
Sale
Dell 24 Monitor - SE2426H - 23.8-inch FHD (1920x1080) 144Hz 1ms Display, in-Plane Switching (IPS) Technology, AMD FreeSync™, TÜV 3-Star 2X HDMI, Tilt
  • Clear visuals. Fluid motion: A 144Hz refresh rate and 1ms MPRT deliver smooth, tear‑free motion across work, gaming, and streaming for clearer, more fluid viewing.
  • Eye comfort: TÜV Rheinland 3‑star* certification reduces harmful blue light while preserving stunning color quality without compromise. *TÜV Rheinland 3-star eye comfort certification.
  • Wide viewing angle: Get consistent views across a wide 178° /178° viewing angle.
  • In-Plane Switching (IPS): See excellent color accuracy and consistency across wide viewing angles with In-plane Switching (IPS) technology.
  • Ultra-thin bezels: Maximize your viewing experience with thin bezels.

Or skip the browser setup

ScreenshotNeo lets you request a rendered screenshot with one GET call. Its API documentation covers the endpoint. You can adapt this cURL request by replacing the target URL:

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://example.com -o shot.webp

With ScreenshotNeo, cookie and consent banners, newsletter popups, and chat widgets are removed before capture; those cleanup steps can be turned off. Bot checks or CAPTCHAs, blank pages, timeouts, failed loads, and cache hits are not billed, and the response identifies the page verdict and billing status in headers. It also provides an MCP server with screenshot, page-info, and PDF-capture tools for AI agents.

The free plan includes 1,000 screenshots per month without a card; paid plans start at $5 for 3,000 screenshots. Every feature is available on every plan. See ScreenshotNeo or sign up for 1,000 free screenshots a month, no card required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #4
Sale
Samsung 27" Essential S3 (S36GD) Series FHD 1800R Curved Computer Monitor
  • CURVED FOR ENHANCED ENGAGEMENT: An immersive viewing experience with a curved monitor that wraps more closely around your field of vision; It creates a wider view, enhancing depth perception and minimizing peripheral distraction
  • SMOOTH PERFORMANCE FOR SEAMLESS CONTENT: Stay in the action when playing games, watching videos, or working on creative projects; The 100Hz refresh rate reduces lag and motion blur so you don't miss a thing in fast-paced moments¹
  • MORE GAMING POWER: Gain the edge with optimizable game settings; Color and image contrast can be adjusted to see scenes more vividly and spot enemies hiding in the dark; Game Mode adjusts any game to fill the screen so you can view every detail²
  • KEEP IT EASY ON THE EYES: Care for your eyes and stay comfortable, even during long sessions; Advanced eye comfort technology certified by TÜV reduces eye strain by minimizing blue light and reducing irritating screen flicker²
  • INCREASED VERSATILITY: Connect to more; Plug devices straight into your monitor for increased flexibility, making your computing environment even more convenient

Reliability, permissions and privacy

  • Authorize external requests. The first run can prompt for authorization. Spreadsheet editors may also see an external-access warning when first using image or import functions.
  • Check caller access. Apps Script requests originate from Google’s network infrastructure, whose source IPs come from a set pool. A destination that restricts caller IPs may block them.
  • Expect page-specific limits. JavaScript-driven pages, login-gated content and anti-bot checks can affect whether a renderer can produce a useful image. Results depend on the renderer and the page’s access rules.
  • Protect credentials and page data. Keep API credentials out of visible cells and follow the provider’s security instructions. Review the provider’s retention and privacy terms before sending URLs or authenticated content.
  • Separate formula import limits from screenshot limits. Google’s warnings about import traffic, administrator restrictions and large results apply to import functions; they should not be treated as screenshot-service limits for every Apps Script request.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Troubleshooting

The cell shows an error or no image

  • For IMAGE(), check that the URL points directly to an image format the function supports, not an HTML webpage or a Google Drive sharing page.
  • For Apps Script, inspect the execution log and the HTTP status from the screenshot service. A non-success status may indicate a bad key, inaccessible target or request problem; use the returned error details rather than inserting the response as an image.
  • If the script reports an authorization or scope error, authorize the script and verify its external-request scope.

The screenshot is blank or incomplete

  • Confirm the target page is publicly accessible from the rendering service, or configure the service’s supported authentication options where appropriate.
  • Pages that depend on client-side JavaScript, delayed content, login access or anti-bot checks may need renderer-specific settings or may not be capturable.
  • Check whether the capture is a viewport image or a full-page image; a viewport capture may omit content below the visible area.

The image is the wrong size or covers the grid

  • IMAGE() changes how the image fits but does not change the cell dimensions. Resize rows and columns separately.
  • Use an in-cell image when it should participate in the grid layout; use an over-cells image when cell text must remain in place.
  • For script-inserted images, change the row and column arguments to insertImage to control placement.

A script stops during a batch

Handle failures per URL, record which URL failed, and resume from the remaining rows. For large batches, split work into smaller runs and account for both Apps Script execution constraints and the screenshot service’s usage limits.

Best Value
Sale
Sceptre New 22-Inch Gaming Monitor, FHD 1080p, Up to 144Hz, HDMI, DisplayPort, Built-in Speakers, Machine Black (E225W-FW144 Series, 2026)
  • 【INTEGRATED SPEAKERS】Whether you're at work or in the midst of an intense gaming session, our built-in speakers provide rich and seamless audio, all while keeping your desk clutter-free.
  • 【EASY ON THE EYES】 Protect your eyes and enhance your comfort with Blue-Light Shift technology. This feature reduces harmful blue light emissions from your screen, helping to alleviate eye strain during long hours of use and promoting healthier viewing habits.
  • 【WIDEN YOUR PERSPECTIVE】Our sleek minimal bezel design ensures undivided attention. The nearly bezel-free display seamlessly connects in a dual monitor arrangement, delivering an unobstructed view that lets you focus on more at once, completely distraction-free.

What to check before automating

  • Does the renderer support the page’s JavaScript, authentication and access requirements?
  • Do you need a viewport capture or the full page?
  • Will the result be returned as image bytes for insertion, or as a stable image URL for IMAGE()?
  • What are the provider’s current usage limits, retention practices and privacy terms?
  • Will the spreadsheet’s editors be authorized to run the script, and are credentials kept out of shared cells?

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Outdated Drivers Are Slowing You DownFree scan - exact matches
Windows Errors? Fix Them Before They SpreadFree repair scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.