How to use IMPORTXML in Google Sheets

Extract page titles, headings, links and table cells with a tested XPath.

Use IMPORTXML in Google Sheets — SheetSteps
QUICK ANSWER

Put the page URL in one cell and use IMPORTXML with a narrow XPath, for example =IMPORTXML(A2,"//h1"). Test the page in a private window to confirm it is public.

Before you extract a page element with XPath, set up a clean source range and one result you can check by hand. That gives you a known answer before the sheet grows.

This article shows how to extract a page element with XPath. The sample sheet uses ordinary rows so you can copy the method into an existing file without rebuilding everything.

Use IMPORTXML in Google Sheets spreadsheet used in this article
A working sheet built for this article. The numbers are sample data.
01
INSTRUCTIONS

How to use IMPORTXML in Google Sheets

  1. 01
    Make a safe copy

    Duplicate the source tab or file before changing formulas, ranges or formatting.

  2. 02
    Set up the source rows

    Add the fields needed to extract a page element with XPath. Keep one record on each row and one field in each column.

  3. 03
    Add the method

    Enter =IMPORTXML(A2,"//h1") in a test cell and check its first result.

  4. 04
    Check a known case

    Pick one row whose answer you already know and compare it with the sheet result.

  5. 05
    Test the awkward rows

    Check blanks, zeros, repeated entries and one row that should not match.

  6. 06
    Apply it to the full range

    Copy the formula or rule only after the sample cases return the expected result.

02
AI & AUTOMATION

Set up the sheet for Use IMPORTXML in Google Sheets

Keep the source table rectangular. A single header row, no merged cells and consistent cell types make the work much easier to check.

Place settings, fixed rates or allowed labels on a separate tab. Name them clearly so another person can read the file without tracing every cell.

  • Confirm the page is public
  • Start with a narrow XPath
  • Check returned HTML
  • Add delays between large groups of imports
03
AI & AUTOMATION

Check the first result before copying it

A result that looks plausible can still be wrong. Work through one row manually, compare it with the Sheet and check every referenced cell.

Next, test a blank row and an unusual row. These two checks catch many range, type and copied-reference mistakes before they spread.

fx=IMPORTXML(A2,"//h1")
04
AI & AUTOMATION

Keep the file reliable as new rows arrive

Leave input columns visually separate from calculated columns. Protect formulas when several people edit the same file, and keep dropdown lists or settings outside the main table.

Add a short check near the result: row count, unmatched count, last refresh time or a manual spot check. The right check depends on the job, but it should make a bad update easy to notice.

05
COMMON QUESTIONS

Questions people ask

What is XPath in IMPORTXML?

XPath is the selector that tells Sheets which nodes or attributes to return from the page.

Can IMPORTXML extract a meta description?

Yes. Use //meta[@name='description']/@content.

Why does IMPORTXML return #N/A?

The selector may match nothing, the page may block the request, or the content may be made by JavaScript.

READ NEXT

More from SheetSteps