How to Use IMPORTRANGE in Google Sheets: A Step-by-Step Guide

Master how to use IMPORTRANGE in Google Sheets to pull data from other workbooks, authorize access, and refine results with QUERY, FILTER, and more in 2026.

How To Sheets
How To Sheets Team
·5 min read
IMPORTRANGE Essentials - How To Sheets
Photo by 422737via Pixabay
Quick AnswerSteps

IMPORTRANGE lets you pull a range from another Google Sheet into your current workbook. In this guide on how to use importrange in google sheets, you will learn the exact syntax, common pitfalls, and best practices. To use it, insert =IMPORTRANGE("spreadsheet_url","range_string"), then grant access when prompted. You can combine it with QUERY, FILTER, or SORT to shape results. This guide covers syntax, practical examples, common errors, and best practices for reliable data in 2026.

What IMPORTRANGE does and how it fits into data workflows

IMPORTRANGE is a function that pulls a range from a separate Google Sheet into your current workbook. According to How To Sheets, this capability acts as a bridge between datasets, enabling centralized dashboards, cross-project views, and collaborative reporting. In practice, you might use it to pull a weekly sales table from a separate file into your master reporting sheet, so everyone sees the same core data without duplicating entries.

This section explains why IMPORTRANGE matters and when to use it. The core idea is to create dynamic links between spreadsheets so updates in the source surface immediately in the destination. This is particularly valuable for teams coordinating budgets, project trackers, or student rosters across multiple files.

Core syntax and first example

IMPORTRANGE requires two arguments: the source spreadsheet URL and the range string. The URL is the full link from the address bar, for example: https://docs.google.com/spreadsheets/d/ABC123... The range string uses the source sheet name and cell range, e.g., 'Sheet1!A1:D50'. The first time you run IMPORTRANGE, Google Sheets will prompt you to grant permission to access the source file. Without permission, the import will return #REF!. After authorization, data appears in the destination sheet. Here’s a simple import you can test:

=IMPORTRANGE("https://docs.google.com/spreadsheets/d/ABC123...","Sheet1!A1:B10").

If you see #REF!, verify the URL and ensure the source file is shared with your account. Remember that imports respect the source sheet’s access settings.

Practical examples: simple import vs multi-sheet imports

You can pull a single range from one sheet with a straightforward formula:

  • Import a specific range: =IMPORTRANGE("https://docs.google.com/spreadsheets/d/ABC123...","Sheet1!A1:C20").
  • Import a named range from the source: =IMPORTRANGE("https://docs.google.com/spreadsheets/d/ABC123...","DataRange") (if a named range named DataRange exists).
  • Import from multiple ranges by stacking separate IMPORTRANGE calls in adjacent cells or using them inside other functions like QUERY. Note that IMPORTRANGE doesn’t merge different sources in one call; you build composites with other functions.

Practical tip: start with a small range to validate connections before pulling large blocks of data.

Refining data with QUERY, FILTER, and SORT

To extract only the subset you need, wrap IMPORTRANGE inside QUERY or FILTER. Example with QUERY:

=QUERY(IMPORTRANGE("https://docs.google.com/spreadsheets/d/ABC123...","Sheet1!A1:D100"),"select Col1, Col3 where Col2 > 100 order by Col3 desc",1)

This returns two columns (Col1 and Col3) where Col2 exceeds 100, sorted by Col3 descending. If your locale uses semicolons as separators, adjust accordingly. You can also use FILTER to narrow results:

=FILTER(IMPORTRANGE("https://docs.google.com/spreadsheets/d/ABC123...","Sheet1!A1:D100"), Sheet1!B1:B100 > 100)

Using these approaches reduces the amount of data brought into your sheet and improves readability and performance.

Handling permissions, errors, and troubleshooting

IMPORTRANGE will show errors like #REF!, #VALUE!, or #N/A if something goes wrong. Common causes include missing permission, an incorrect range string, or the source sheet being renamed or moved. Ensure you have access to the source file and that the range exists. If you’ve granted access and still see #REF!, try reloading the sheet, re-authorizing, or verifying that the URL matches the source exactly. When importing large ranges, consider limiting the range to improve reliability and refresh speed.

Performance and reliability: best practices

To keep IMPORTRANGE reliable and fast:

  • Import only the necessary ranges rather than entire sheets.
  • Prefer named ranges in the source when possible for readability and stability.
  • Combine IMPORTRANGE with QUERY to shrink the data payload, improving refresh speed and reducing recalculation load.
  • Periodically audit shared access to ensure you aren’t exposing sensitive data unintentionally.

In 2026, the practical takeaway is to design imports with scale in mind: smaller, well-defined ranges outperform massive, catch-all imports.

Real-world use cases by industry

Educators use IMPORTRANGE to consolidate class rosters from separate class sheets into a single admin dashboard. Small businesses pull monthly sales data from regional sheets into a central performance tracker. Project teams share status updates by importing progress logs from multiple project sheets to a master report. The pattern is the same: link source data, filter for relevance, and present a unified view.

When building dashboards, consider combining IMPORTRANGE with charts and conditional formatting to highlight trends and exceptions across datasets.

Security, privacy, and sharing considerations

Because IMPORTRANGE pulls data from another sheet, every viewer of the destination sheet can access the imported data, subject to the source sheet’s access settings. Carefully manage who has permission to view the source data and avoid exposing sensitive information in a widely shared destination. Use granular sharing settings, consider creating dedicated import sheets with restricted access, and regularly audit who can view linked documents. This practice aligns with common data governance standards for teams and organizations.

Common pitfalls and how to avoid them

  • Pitfall: Importing a range that doesn’t exist. Always double-check the exact range syntax (SheetName!A1:Z100) and verify the source exists.
  • Pitfall: Forgotten permission prompts. The first time you import, you must grant access; if you skip, you’ll see #REF!.
  • Pitfall: Slower performance with very large imports. Limit ranges or use QUERY to summarize data before importing.
  • Pitfall: URL changes. If the source file is renamed or moved, update the URL in IMPORTRANGE accordingly.

Pro tip: Build a small, repeatable template: a single import formula that you can copy across, then adjust the range string as needed.

AUTHORITY SOURCES

  • Google Docs Editors Help: Import data from another spreadsheet (IMPORTRANGE) (official): https://support.google.com/docs/answer/3093340
  • Google Sheets API Documentation (official): https://developers.google.com/sheets/api
  • Britannica: Google Sheets overview and common usage patterns: https://www.britannica.com/topic/Google-Sheets

Tools & Materials

  • Google account with access to both spreadsheets(Needed to authorize IMPORTRANGE and view the source data)
  • Source spreadsheet URL(Copy the full URL from the browser address bar)
  • Range string(e.g., Sheet1!A1:D50 or a named range like DataRange)
  • Destination spreadsheet(The file where you will place the IMPORTRANGE formula)
  • Stable internet connection(Recommended for reliable imports and refreshes)

Steps

Estimated time: 20-30 minutes

  1. 1

    Copy source URL

    Open the source spreadsheet and copy its full URL from the address bar. This URL uniquely identifies the file you want to import data from.

    Tip: Use the URL for the exact file you intend to reference; avoid sharing a shortened link.
  2. 2

    Open destination sheet

    Navigate to the Google Sheet where you want to import data. Decide the starting cell for your import.

    Tip: Choose a blank area to prevent overwriting existing data.
  3. 3

    Enter the IMPORTRANGE formula

    In the chosen cell, enter the formula: =IMPORTRANGE("source_url","SheetName!A1:D50").

    Tip: Use the exact URL string and correct range syntax; include quotes around both arguments.
  4. 4

    Grant access

    If prompted, click Allow to grant access to the source sheet. Without permission, the import will show an error.

    Tip: If you don’t see a prompt, reload the page and try again.
  5. 5

    Test with a small range

    Start with a small range (e.g., A1:C10) to verify connectivity and data layout.

    Tip: Confirm that header rows align with your destination expectations.
  6. 6

    Refine with QUERY or FILTER

    If you need specific columns or conditions, wrap IMPORTRANGE with QUERY or FILTER to limit data.

    Tip: Remember to use Col1, Col2, etc., inside QUERY when referencing imported data.
  7. 7

    Scale to larger imports

    Gradually expand the range or use named ranges to keep imports efficient and stable.

    Tip: Large imports can slow sheets; prefer summarizing data before import when possible.
  8. 8

    Validate & monitor

    Periodically verify data freshness and permissions, especially after sharing changes.

    Tip: Keep a changelog for source file permissions and URL changes.
Pro Tip: Always test with a small range first to validate the connection and data structure.
Warning: Do not expose sensitive data by importing into a publicly shared sheet.
Note: If the source data updates frequently, consider scheduling a review to refresh dashboards.

FAQ

What is IMPORTRANGE and when should I use it?

IMPORTRANGE imports data from a different Google Sheet into your current workbook. Use it to create centralized dashboards, consolidate reports, or share live data across files without duplicating data. It’s especially useful when you need up-to-date information from multiple sources in a single view.

IMPORTRANGE imports data from another Google Sheet into your current workbook, ideal for centralized dashboards. Use it when you need live data from multiple sources without manual copying.

Why do I get #REF! in my IMPORTRANGE import?

#REF! usually means you haven’t granted access yet or the source URL/range is incorrect. Ensure you’ve allowed access after entering the formula and verify that the range exists in the source file. Double-check the URL for accuracy.

If you see #REF!, grant access and verify the source URL and range. Sometimes you need to reload the sheet to establish the connection.

Can I import multiple ranges from different sheets at once?

IMPORTRANGE handles one source range per formula. To combine data from multiple sources, use several IMPORTRANGE calls or merge results with QUERY, FILTER, or ARRAYFORMULA logic. This keeps imports modular and easier to troubleshoot.

You can't import multiple ranges in one IMPORTRANGE formula; use multiple formulas or combine results with other functions.

How often does IMPORTRANGE refresh data?

IMPORTRANGE updates in response to changes in the source sheet and when the destination sheet recalculates. There is no fixed refresh interval; expect near real-time updates under typical conditions.

Data updates as the source changes, with Google Sheets recalculating as needed.

What security considerations should I keep in mind with IMPORTRANGE?

Because the destination sheet shows imported data, limit access to the destination sheet and control who can view the source data. Avoid importing sensitive information into widely shared files. Use named ranges and restricted sharing where possible.

Be mindful of who can view the destination sheet and the source data; restrict access to protect sensitive information.

Watch Video

The Essentials

  • Grant access once to enable imports.
  • Use QUERY to refine results and improve performance.
  • Limit import ranges to reduce load and refresh time.
  • Verify sharing settings to protect sensitive data.
  • Test with small ranges before scaling.
Diagram showing a three-step IMPORTRANGE process in Google Sheets
Three-step workflow to import data across Google Sheets

Related Articles