Google Sheets VLOOKUP Example: A Practical Tutorial

Master a practical Google Sheets VLOOKUP example with exact-match lookups, robust error handling, and real-world templates to speed up data tasks for everyday spreadsheets.

How To Sheets
How To Sheets Team
·5 min read
VLOOKUP in Action - How To Sheets
Photo by johannesbayer0via Pixabay
Quick AnswerSteps

By the end of this guide, you will be able to pull an exact-match value from a reference table using VLOOKUP in Google Sheets. You’ll see a concrete example, learn the four VLOOKUP arguments, and understand how to handle missing results with IFERROR. The result is a reliable, scalable lookup workflow for everyday data tasks.

Why VLOOKUP Matters in Google Sheets

VLOOKUP remains one of the most useful functions for joining data from separate lists in Google Sheets. Whether you’re inventorying products, managing student rosters, or compiling client lists, a reliable lookup helps you avoid manual copy-paste and reduces errors. According to How To Sheets Analysis, 2026, many small teams rely on VLOOKUP as a fast, code-free way to bridge tables. The basic idea is simple: you search for a value in the leftmost column of a table and return the corresponding value from a chosen column.

In practice, this pattern supports common workflows: price lookups, ID-to-name mappings, category tagging, and cross-sheet data consolidation. A well-crafted VLOOKUP is not a one-size-fits-all solution, though. You must ensure your lookup column is clean (no leading/trailing spaces), your table_array covers the full range you plan to search, and your column index is correct. When done well, VLOOKUP scales with your data and saves hours each week.

The Anatomy of a VLOOKUP Formula

A VLOOKUP formula has four arguments: lookup_value, table_array, col_index, and range_lookup. The lookup_value is what you want to find in the first column of table_array. table_array is the range that contains the lookup column and the return column. col_index specifies which column in that range to pull the result from (the first column is 1). range_lookup is TRUE for an approximate match or FALSE for an exact match. In most data tasks, you’ll set range_lookup to FALSE to ensure precise results. Remember: VLOOKUP always searches the leftmost column of table_array; if your key lives elsewhere, you’ll need INDEX/MATCH instead.

A Simple Google Sheets VLOOKUP Example

Imagine a workbook with two sheets: Data (A:C) lists Product ID, Product Name, and Price, while Lookup (A:A) contains a list of IDs you need to find. To fetch the price for a specific ID, place the formula in the Price column of Lookup or a summary sheet:

=VLOOKUP("P002", Data!A:C, 3, FALSE)

This looks for P002 in Data!A:A, then returns the value from the third column (Price). If the ID isn’t found, VLOOKUP returns #N/A unless you wrap it with IFERROR.

Handling Not Found: IFERROR and Alternatives

To present friendly results instead of #N/A, wrap VLOOKUP with IFERROR:

=IFERROR(VLOOKUP("P002", Data!A:C, 3, FALSE), "Not found")

IFNA is another option that only handles the #N/A case. Use IFERROR when you expect other potential errors and want a default message. Always validate a few sample lookups to confirm consistency across your dataset.

Approximate Match vs Exact Match

Exact match (FALSE) requires the lookup value to be present in the leftmost column of the table_array. Approximate match (TRUE) finds the closest value if an exact one isn’t present, which is useful for ranges or sorted data (e.g., tax brackets or grades). In practice, prefer FALSE for IDs and codes to avoid misclassifications; switch to TRUE only when you’re purposely searching for a range match.

Common Pitfalls and How to Debug

Several issues derail lookups: (1) lookup_value data type mismatch (text vs. number) can lead to #N/A or unexpected results; (2) not including the full lookup table in table_array; (3) using a wrong col_index (off by one) and (4) extra spaces or hidden characters in the lookup column. To debug, test with a known ID, verify data types, trim whitespace, and try a simple VLOOKUP with a small table to confirm baseline behavior before scaling up.

Expanded Example: Two-Wheet Lookup

For more complex scenarios, you may need to pull data from multiple sheets. One common pattern is performing a VLOOKUP from a summary sheet against a master Data sheet. You can nest VLOOKUPs to fetch multiple fields, or combine with IFERROR to gate results. Remember to anchor ranges with $ to avoid accidental shifts when copying formulas across rows, and consider INDEX/MATCH for more flexible, left-to-right lookups.

Alternatives to VLOOKUP: INDEX/MATCH and XLOOKUP

VLOOKUP has limitations, such as requiring the lookup column to be first. INDEX/MATCH overcomes this by separating the lookup (MATCH) and return (INDEX) operations, letting you look up anywhere in the table. XLOOKUP (where available) can simplify syntax and offer easier default handling. For robust sheets, combine INDEX/MATCH (or XLOOKUP) with data validation and named ranges to improve reliability.

Tools & Materials

  • Google Sheets open in a modern browser(Ensure you’re signed into a Google account with editing access.)
  • Two sample sheets in a workbook (Data and Lookup)(Data!A:C should cover IDs, names, and prices.)
  • Lookup value prepared in a cell(Use a fixed ID to test exact-match behavior.)
  • IFERROR or IFNA functions available in Sheets(Optional for clean error handling.)
  • Reference ranges with absolute/relative anchors(Use $ symbols to fix ranges when copying formulas.)

Steps

Estimated time: 25-30 minutes

  1. 1

    Prepare your dataset

    Open a workbook with a Data sheet containing lookup keys in the leftmost column and values to retrieve in the adjacent column. Create a Lookup sheet to test the VLOOKUP using a fixed ID. Clean up any whitespace or mixed data types before you begin.

    Tip: Standardize IDs as text (prefix with 'ID' or use TEXT) to avoid numeric coercion issues.
  2. 2

    Identify the lookup value and return column

    Decide which column holds the key (first column) and which column contains the value you want to return. Note the column index you’ll use in the VLOOKUP (e.g., 3 for Price in A:C).

    Tip: Count columns from the left edge of your table_array; the leftmost column is 1.
  3. 3

    Enter the VLOOKUP formula

    In the target cell, enter the VLOOKUP formula referencing the lookup value, the Data sheet range, the return column, and FALSE for exact match.

    Tip: Keep table_array anchored (Data!$A:$C) to avoid shifting when dragging the formula.
  4. 4

    Copy the formula down

    Fill the formula down to adjacent rows to retrieve multiple results. Ensure relative references adjust correctly while absolute references remain fixed.

    Tip: Use Ctrl+D (Windows) or Command+D (Mac) to quickly fill down after selecting the range.
  5. 5

    Add robust error handling

    Wrap the VLOOKUP in IFERROR (or IFNA) to present a friendly message when a lookup value is missing.

    Tip: IFERROR is useful when you expect occasional missing data; keep a clear placeholder like 'Not found'.
  6. 6

    Validate results and edge cases

    Test several IDs, including the first and last entries, and verify that numbers and text are treated consistently. Check for stray spaces and data type inconsistencies.

    Tip: Always test with a known-good ID and a non-existent ID to see how errors are handled.
Pro Tip: Always use FALSE for exact-match lookups to avoid surprises with unintended matches.
Warning: Do not merge cells in the lookup column; merged cells can break range alignment.
Note: Trim whitespace and standardize data types to prevent mismatches.
Pro Tip: Consider INDEX/MATCH for lookups that require left-side retrieval or multiple return values.

FAQ

What is the function signature of VLOOKUP in Google Sheets?

VLOOKUP(lookup_value, table_array, col_index, range_lookup) is the standard form. The first argument is what you search for, the second is the data block, the third selects the return column, and the fourth controls exact vs. approximate matching.

VLOOKUP uses four parts: search key, data range, return column, and exact or approximate match.

Why does VLOOKUP sometimes return #N/A?

Common causes include a missing lookup value, data type mismatches, extra spaces, or using an incorrect column index. Verifying the lookup column and cleaning data typically resolves the issue.

Often #N/A means the key isn’t found, or there’s a data-type issue or extra spaces.

Can VLOOKUP look to the left in Google Sheets?

No. VLOOKUP always searches the leftmost column of the table_array and returns a value from a column to the right. For left-lookups, use INDEX/MATCH or XLOOKUP when available.

VLOOKUP reads left-to-right, so consider INDEX/MATCH for leftward lookups.

Should I use exact-match or approximate-match by default?

Use exact-match (FALSE) when working with IDs, codes, or names to ensure precise results. Reserve approximate-match (TRUE) for ranges like scores or pricing brackets that require a closest match.

Exact-match is safer for IDs; approximate-match is for ranges when data is sorted.

Is INDEX/MATCH always better than VLOOKUP?

INDEX/MATCH is more flexible, especially when the lookup column isn’t the first column, or when you need multiple return values. For many everyday tasks, VLOOKUP remains simpler and faster to implement.

INDEX/MATCH is more flexible, but VLOOKUP is simpler for straightforward lookups.

Do text and numbers need to be formatted consistently for VLOOKUP?

Yes. Mismatched data types (text vs numbers) or hidden characters can cause misses. Normalize data formats and consider VALUE or TEXT functions when needed.

Keep data types consistent to avoid missed lookups.

Watch Video

The Essentials

  • Master VLOOKUP syntax with four arguments
  • Prefer exact-match (FALSE) for IDs
  • Wrap with IFERROR to clean missing results
  • INDEX/MATCH offers flexibility beyond VLOOKUP
  • Validate data quality and edge cases
Three-step VLOOKUP process flow
Simple 3-step VLOOKUP workflow

Related Articles