Productivity•8 min read
Google Sheets Dependent Dropdown: Dynamic Lists
Create Google Sheets dependent dropdowns with FILTER, helper ranges, and reliable validation for changing lists.
SheetHub••8 min
A regular dropdown always shows the same choices. A Google Sheets dependent dropdown changes the second list after someone makes a first selection. In Google Sheets, you can build that relationship with a clean source table,
Suppose a sheet has a category in E2 and an item in F2. When E2 is
Keep one category-item pair per row. Consistent spelling matters:
Put the source list on a sheet such as
The first dropdown holds the parent selection.
Use that result as the first dropdown's source range. Keeping the category list separate makes the control easier to scan and avoids repeated choices.
Google Sheets data validation reads values from a range. It does not require the filtering formula to live inside the validation rule. Put the formula in a helper cell, then point the second dropdown at the cells populated by that formula.
For a form where E2 contains the selected category, place this formula in
The formula does four things:
Now connect the generated values to the item cell.
A category with no matching items should not produce a confusing
For categories in E2:E20 and items in F2:F20, each row needs an isolated helper result. Allocate one helper column per form row:
A common mistake is pasting
The concept is shared, but the implementation is not. In Excel, dependent dropdowns often use named ranges and
The second list is empty when the parent text does not match a source category. Check the spelling in E2 and the category column on the
After testing one working list, you can ask an AI assistant to adapt the pattern to your columns. Include the source sheet, parent cell, child cell, blank behavior, and expected fallback. For example:
To create a Google Sheets dependent dropdown, keep parent-child data in a normalized source table, create the parent validation rule, generate the matching child list with
FILTER, and a helper range. You do not need to copy Excel's named-range and INDIRECT pattern.
This guide builds a category-to-item dropdown. The same design works for departments and employees, countries and cities, or any other parent-child list.
What a dependent dropdown does
Fruit, the dropdown in F2 should offer only fruit. When E2 changes to Office, F2 should show office supplies instead.
The source data can look like this:
| Category | Item |
|---|---|
| Fruit | Apples |
| Fruit | Bananas |
| Office | Pens |
| Office | Notebooks |
| Travel | Carry-on bag |
| Travel | Packing cubes |
Office and office should not be treated as separate labels in a user-facing list.
Prepare a clean source table
Lists:
- Column A: category
- Column B: item
- Row 1: headers
- Rows 2 onward: records
Create the first dropdown
- Select the category cell, such as
E2. - Choose Data > Data validation.
- Add a rule with Dropdown from a range.
- Select the category source range, such as
Lists!A2:A. - If the same category appears many times, use a separate unique category list instead of the repeated source column.
- Click Done.
=SORT(UNIQUE(FILTER(Lists!$A$2:$A, Lists!$A$2:$A<>"")))Generate the dependent list in a helper range
H2 on a helper sheet or outside the visible dashboard:
=IFNA(SORT(UNIQUE(FILTER(Lists!$B$2:$B, Lists!$A$2:$A=$E2, Lists!$B$2:$B<>""))),"")FILTERkeeps items whose category equals E2.- The second condition removes blank item values.
UNIQUEremoves duplicate choices.SORTgives the dropdown a predictable alphabetical order.
IFNA returns a blank when there is no match. Leave enough empty cells below H2 for the result to expand; content in the spill path can block it.
If your source table is on the same sheet, remove the Lists! prefix. If the selected category is in another row, adjust the reference to that row, such as $E3 for a helper formula serving row 3.
Point the second dropdown to the helper range
- Select
F2. - Choose Data > Data validation.
- Select Dropdown from a range.
- Use the helper range beginning at H2, for example
Helpers!H2:H50. - Choose whether invalid values should be rejected or merely show a warning.
- Click Done.
Handle blanks and no-match results
#N/A message in the dashboard. The IFNA wrapper handles that case, but the validation control may still show no useful choices. That is a signal to add source data or correct the category spelling.
A blank helper result is different from a blank item in the source table. The formula removes source blanks with Lists!$B$2:$B<>"", so empty rows do not become selectable values.
If a user changes E2 after choosing F2, the old F2 value may remain even when it no longer belongs to the new category. Tell users to reselect the child value, or use Apps Script when automatic clearing is required. Apps Script is outside this formula-only setup.
Support multiple input rows
- H2 filters using
$E2 - I2 filters using
$E3 - J2 filters using
$E4
Why direct formula entry may fail
FILTER directly into a dropdown's criteria field. Dropdown from a range expects cells, not an arbitrary variable-length formula result. Generate the list in a helper range first.
Selecting only H2 as the validation source can also omit results that expand through H10. Select a range such as H2:H50, or maintain a deliberately sized helper range.
For more complex helper transformations, the advanced QUERY in Google Sheets guide explains how to filter, label, and reshape formula output. Use QUERY when the list needs several conditions or a report-style transformation; FILTER is usually easier to read for one parent-child relationship.
Google Sheets versus Excel
INDIRECT, or a spill reference such as =$E$4#. Google Sheets uses its own validation panel and a source range populated by formulas. See the Google Sheets dependent dropdown compared with Excel's named-range method guide for the Excel-specific methods instead of copying its validation source unchanged.
A dependent dropdown is also different from a checkbox. A checkbox stores a TRUE/FALSE choice, while a dropdown stores one selected label. If your interface needs a yes/no switch alongside the category and item fields, Google Sheets checkboxes explains the formula behavior.
Troubleshooting checklist
Lists sheet.
Keep IFNA around the helper formula when it shows #N/A, then check whether the selected category has any matching items.
If the list stops early, expand the validation source range beyond the first helper cell. A source such as H2:H50 must cover the cells the formula can fill.
Clear the cells below the helper formula when it shows #REF!. Text or another formula in the spill path blocks the result.
Keep UNIQUE, check category spelling, and give each input row its own spill area when duplicates or row conflicts appear.
AI prompt callout
"In Google Sheets, my source sheet has Category in column A and Item in column B. The selected category is in E2. Write a formula for a helper range that returns sorted, unique, nonblank items matching E2, and explain how to use that helper range for a data-validation dropdown. Return a blank result when there are no matches."Compare the generated formula with a tested example before applying it. Check every range, sheet name, absolute reference, and validation source.
Summary
FILTER, and use that helper range as the second validation source. Add UNIQUE, SORT, and blank handling for a cleaner control. For multiple rows, isolate each helper spill area so the lists cannot collide.Recommended Next Reading
Google Sheets
=GOOGLE(...)Google Sheets 20 Million Cell Limit: What It Means
Explore ↗
Excel
=EXCEL(...)Excel Custom Sort by Color: Build a Priority Order
Explore ↗
Excel
=EXCEL(...)Excel Evaluate Formula: Debug Complex Calculations
Explore ↗
Share this tutorial
Discussion & Community
Share questions, tips, or edge-cases about this spreadsheet formula.