How to Use IMPORTRANGE in Google Sheets to Link Multiple Spreadsheets

Connecting data across separate Google Sheets files is essential when building executive dashboards, pulling sales numbers from department trackers, or keeping sensitive source data isolated from public reports. Rather than downloading CSVs or manually re-entering records, Google Sheets provides a dedicated cross-file linkage function: IMPORTRANGE.

This guide covers how to set up IMPORTRANGE step-by-step, grant required permissions, combine it with QUERY to filter data on the fly, and prevent spreadsheet slowdowns.


What is the IMPORTRANGE Function?

The IMPORTRANGE function allows you to import a range of cells from a completely separate Google Sheets spreadsheet file into your current workbook.

Formula Syntax

=IMPORTRANGE(spreadsheet_url, range_string)
Parameter Requirement Description
spreadsheet_url Required The full URL or unique ID key of the source spreadsheet (must be enclosed in double quotes).
range_string Required The tab name and cell range to import, formatted as "TabName!A1:D100" (must be enclosed in double quotes).

Step 1: Copy the Source Spreadsheet URL or Key

Open the Google Sheet containing the data you want to pull from and copy its web address from your browser's address bar.

You can use the full URL:

"https://docs.google.com/spreadsheets/d/1A2b3C4d5E6f7G8h9I0jKLmnOPqrSTuvwxYZ/edit"

Or you can extract just the unique Spreadsheet Key (the long string of letters and numbers between /d/ and /edit):

"1A2b3C4d5E6f7G8h9I0jKLmnOPqrSTuvwxYZ"
Pro Tip: Using just the Spreadsheet Key keeps your formulas shorter and cleaner, especially when nesting IMPORTRANGE inside other functions.

Step 2: Enter the IMPORTRANGE Formula

Open your destination spreadsheet where you want the imported data to appear and enter the formula into cell A1:

=IMPORTRANGE("1A2b3C4d5E6f7G8h9I0jKLmnOPqrSTuvwxYZ", "SalesData!A1:E100")

Step 3: Allow Access Between Sheets

When you first enter an IMPORTRANGE formula pointing to a new source sheet, Google Sheets will display a #REF! error in the cell. This is expected security behavior.

  1. Hover your mouse cursor over the cell containing the #REF! error.
  2. A popup dialog will appear stating: "You need to connect these sheets."
  3. Click the blue "Allow access" button.

Once permission is granted, Google Sheets remembers the connection for all users with access to the destination sheet. You only need to click this button once per linked workbook.


Advanced: Filter Imported Data on the Fly (IMPORTRANGE + QUERY)

Pulling raw data and filtering it afterwards wastes computing resources and can slow down your spreadsheet. You can wrap IMPORTRANGE inside a QUERY function to import only the specific rows and columns you need.

Formula Example (Importing Completed Orders Only):

=QUERY(IMPORTRANGE("SPREADSHEET_KEY", "Orders!A1:F"), "SELECT Col1, Col3, Col5 WHERE Col6 = 'Completed' IS NOT NULL", 1)
Important: When using QUERY over an IMPORTRANGE array, reference columns as Col1, Col2, Col3 (case-sensitive) instead of A, B, C.

Best Practices for Fast Performance

  1. Minimize the Number of IMPORTRANGE Calls: Import a single large block of data (e.g., A1:G1000) in one cell, rather than writing dozens of individual IMPORTRANGE formulas across multiple cells.
  2. Avoid Formula Chaining: Avoid importing Sheet A into Sheet B, then Sheet B into Sheet C, then Sheet C into Sheet D. Long chains create performance bottlenecks and make debugging connection errors difficult.
  3. Use Open Ranges with Caution: While A1:Z works, importing massive blank ranges forces Google Sheets to check thousands of empty cells unnecessarily. Specify estimated row boundaries (e.g., A1:Z5000) when possible.

Troubleshooting Common IMPORTRANGE Errors

Error Code Probable Cause How to Fix
#REF! Permission not granted or target space blocked. Hover over the cell and click Allow access, or ensure cells below the formula are completely empty.
#N/A Incorrect tab name or invalid syntax. Check that the tab name in quotes matches the source tab exactly (e.g., 'Sales Data'!A1:B).
#ERROR! Missing quotes around URL or range string. Ensure both the URL/key and the range string are enclosed in double quotes ("...").
#VALUE! Formula length or parameter mismatch. Verify that range boundaries are valid and check for extra nested commas inside the arguments.

Comments