How to Make Category Dropdowns in Google Sheets
Make category dropdowns in Google Sheets: data validation, a list from a range, colored chips, and dependent category → subcategory dropdowns.
In short
To make a category dropdown in Google Sheets, select the column, choose Insert → Dropdown, type one category per item and pick a color for each. To manage the list in one place, use Dropdown (from a range) pointing at a Lists tab. For subcategories, add a FILTER helper row and point the second dropdown at it.
To make category dropdowns in Google Sheets, select your Category column, choose Insert → Dropdown, type one category per item and give each a color. If you'd rather edit the list in one place, choose Dropdown (from a range) and point it at a list of categories on a separate tab. For subcategories, add a dependent dropdown that changes with the category you pick. Each method is covered below.
Every example uses an Expenses tab laid out like our free Google Sheets expense tracker template:
| Column | A | B | C | D |
|---|---|---|---|---|
| Header | Date | Category | Amount | Notes |
| Example | 03/10/2026 | Food | 64.20 | Groceries |
Why categories belong in a dropdown
A typed Category column drifts. "Food", "food ", "Groceries" and "Fod" end up as four categories, and every total that matches on the text comes up short. A dropdown fixes the spelling at the moment of entry, so:
- SUMIFS totals by month and category add up correctly.
- Pivot tables and charts show one bar per category instead of five near-duplicates.
- Entering a row is a tap, not typing, which matters most on a phone.
How many Google Sheets dropdown categories should you have? Six to ten is a good range. Fewer and the totals tell you little; more and picking one gets slow. If you need finer detail, use a subcategory column (see the dependent dropdowns section) rather than a longer list.
How do I make category dropdowns in Google Sheets?
Google Sheets builds dropdowns with data validation: a rule that says which values a cell will accept. Insert → Dropdown is a shortcut that opens the same rule panel with the dropdown criteria already selected.
Method 1: type the categories into the rule
This is the fastest way, and a good fit for a list that rarely changes.
- Select the cells for the dropdown, for example B2:B1000 on the Expenses tab. Leave out the header row.
- Choose Insert → Dropdown. (Or Data → Data validation → Add rule, then set Criteria to Dropdown.)
- Type your first category in the first box, for example Food.
- Click Add another item and type the next one. Repeat for each category: Food, Transport, Utilities, Rent, Entertainment, Health, Other.
- Click the color swatch next to each item to give it a chip color (covered in the chips section below).
- Open Advanced options and check that If the data is invalid is set to Reject the input.
- Click Done.
Each cell in B2:B1000 now shows a chip. Click it, or type the first letters and press Enter, to choose a category.
You can also right-click a cell and choose Dropdown, or type @ in a cell and pick Dropdowns from the menu. All three open the same panel.
Method 2: a list from a range
Typed lists live inside each rule. If two columns or two tabs need the same categories, you'd have to edit both. A list from a range keeps the categories in cells, so you edit them once.
- Add a tab called Lists. In A1 type Category, then list your categories in A2 downward.
- Go back to the Expenses tab and select B2:B1000.
- Choose Data → Data validation → Add rule.
- Set Criteria to Dropdown (from a range).
- Enter the range
=Lists!$A$2:$A, or click the grid icon and select it. Leaving off the end row means new categories you add at the bottom are picked up. - Pick colors for the items, set Reject the input under Advanced options, and click Done.
To add a category later, type it under the list on the Lists tab. Every dropdown pointing at that range shows it straight away.
Two things to watch:
- Renaming a category doesn't rename old rows. Change "Transport" to "Travel" on the Lists tab and every existing "Transport" cell becomes invalid (it gets a red corner). Use Edit → Find and replace on the Category column to update them.
- Stray spaces create separate options. "Food " with a trailing space isn't "Food". Run Data → Data cleanup → Trim whitespace on the list.
Typed list or range: which to use
| Typed list (Dropdown) | List from a range | |
|---|---|---|
| Set-up | Fastest | One extra tab |
| Edit the categories | Open the rule each time | Type in a cell |
| Share one list across columns or tabs | No, edit each rule | Yes |
| Colors per item | Yes | Yes |
| Needed for dependent dropdowns | No | Yes |
| Best for | A short, fixed list | Categories you'll change, or subcategories |
Chips and colors
Google Sheets shows dropdowns as chips by default: rounded labels with a small arrow. Colors make a long expense list easy to scan, because you see a run of green "Food" chips before you read a word.
To color each category, open the rule (Data → Data validation, then click the rule) and click the swatch next to each item. Pick a color per category. It applies to every cell using that rule.
To change how the dropdown looks, open Advanced options → Display style:
| Display style | What you see | Good for |
|---|---|---|
| Chip | A colored, rounded label | Most expense sheets; the default |
| Arrow | Plain text with a dropdown arrow at the right | Dense sheets, printing |
| Plain text | Just the value, no arrow | Sheets where you rarely change the value |
To color the whole row, not just the chip, use conditional formatting. Select A2:D1000, choose Format → Conditional formatting, set Format cells if to Custom formula is, and enter =$B2="Food". Pick a fill color and repeat for other categories. The $ before B keeps every cell in the row reading the Category column.
A few tips that keep the colors useful:
- Use soft colors for everyday categories and one strong color for the ones you're watching, such as Entertainment.
- Don't rely on color alone. The text in the chip still carries the meaning, which matters for anyone who has trouble telling colors apart.
- Allow multiple selections (in the Criteria section, chip style only) puts several chips in one cell. Leave it off for Category: SUMIFS matches the cell's whole text, so a cell holding "Food, Health" counts toward neither total.
Dependent dropdowns: category → subcategory
A dependent dropdown changes its options based on another cell. Pick Food in Category and the Subcategory dropdown offers Groceries, Restaurants, Coffee; pick Transport and it offers Fuel, Parking, Public transport.
Google Sheets has no built-in "dependent" setting, and a dropdown range can't hold a formula like FILTER. So you build it in two parts: a helper row that works out each row's options, and a dropdown that points at that helper row.
Step 1: list subcategories next to their category
On the Lists tab, add two columns, D and E, with one row per subcategory:
| D: Category | E: Subcategory |
|---|---|
| Food | Groceries |
| Food | Restaurants |
| Food | Coffee |
| Transport | Fuel |
| Transport | Parking |
| Transport | Public transport |
| Utilities | Electricity |
| Utilities | Internet |
This long, two-column shape is easier to maintain than one column per category. Adding a subcategory is just another row.
Step 2: add a helper tab
Add a tab called Helper. In A2, paste:
=IFERROR(TRANSPOSE(FILTER(Lists!$E$2:$E, Lists!$D$2:$D=Expenses!$B2)))
FILTER returns the subcategories whose category matches B2 on the Expenses tab, and TRANSPOSE lays them across the row (A2, B2, C2…). IFERROR leaves the row blank while no category is picked.
Copy A2 down as far as your entry rows go, for example to A1000. Each Helper row now holds the subcategories for the same row on Expenses. Leave columns B to Z empty, because the results spill into them.
Step 3: point the Subcategory dropdown at the helper row
- On the Expenses tab, insert a Subcategory column. These steps assume it's column C, with Amount moving to D.
- Select C2 only.
- Choose Data → Data validation → Add rule → Dropdown (from a range).
- Enter
=Helper!$A2:$Z2. Note there's no$before the 2. That unlocked row number is what lets each row read its own helper row. - Under Advanced options, choose Show a warning rather than Reject the input. When the category changes, the old subcategory stays in the cell; a warning flags it without blocking you.
- Click Done.
- Copy C2, select C3:C1000, and choose Edit → Paste special → Data validation only. Each row's rule shifts to its own helper row: C3 reads Helper row 3, C4 reads row 4, and so on.
Pick Food in B2 and C2 now offers Groceries, Restaurants and Coffee. Change it to Transport and C2 offers the transport list, with a red-corner warning on any old subcategory that no longer fits.
If every row shows the same list
The range is still locked to one row. Open the rule on a lower cell, such as C5. If it reads =Helper!$A$2:$Z$2, remove the second $ and paste the validation down again.
Do you need subcategories at all?
Often not. Subcategories double the tapping for every entry. A common middle ground is a flat category list plus a free-text Notes column. You can still find every coffee with a filter on Notes, and your budget runs at category level, where it's easier to act on. Add subcategories when a single category is big enough that you need to split it, as Food often is.
Log entries from your phone without breaking the dropdowns
Dropdowns are easy to use at a desk. In the Google Sheets phone app, they take a few more taps, and multi-select dropdowns can't be used there at all.
Voice Sheet reads your spreadsheet's header row and the options in each dropdown, then builds a phone form from your columns: a list of your categories for Category, a date picker for Date, a number pad for Amount. The value written back is always one of the options you defined, so your totals keep matching. The form is free, and so are the seven Google Sheets templates; the Personal Finances template comes with its Category dropdown already set up. With Premium, you can say "coffee 4.50 this morning" and the category is picked from your list. Voice Sheet works with Google Sheets only, and voice input is English only.
Dropdowns are one part of a working tracker. For the columns, monthly formulas and dashboard around them, see the full guide to track expenses in Google Sheets. If you budget with the 50/30/20 rule, the same dropdown method drives a Need/Want/Save column in our 50/30/20 budget spreadsheet.
Frequently asked questions
How do I add a dropdown list in Google Sheets?
Select the cells, then choose Insert → Dropdown, or Data → Data validation → Add rule. Under Criteria, pick Dropdown and type one option per line with Add another item, or pick Dropdown (from a range) and select a list of cells. Click Done. Each cell now shows a chip you click to choose an option.
How do I color-code dropdown options in Google Sheets?
Open the rule in Data → Data validation and click the color swatch next to each option. The chip takes that color in every cell that uses the rule. The color only fills the chip, not the whole row. To color the entire row by category, add a conditional formatting rule with a custom formula such as =$B2="Food".
How do I make a dependent dropdown in Google Sheets?
Put each category's subcategories on a Lists tab. On a Helper tab, add =TRANSPOSE(FILTER(Lists!$E$2:$E, Lists!$D$2:$D=Expenses!$B2)) and copy it down, so each row returns the subcategories for that row's category. Then set the Subcategory column to Dropdown (from a range) pointing at the helper row with the row unlocked: =Helper!$A2:$Z2.
Can a Google Sheets dropdown allow multiple selections?
Yes. In the rule's Criteria section, tick Allow multiple selections. It only works with the Chip display style, and options with leading or trailing spaces stop it working. Avoid it for an expense Category column, though. A cell holding two categories can't be totaled with SUMIFS, which matches the cell's whole text.
How do I add a new category to an existing dropdown?
If the dropdown uses a typed list, open Data → Data validation, click the rule and add the item. If it uses a range, just type the new category under the list on your Lists tab; every dropdown that points at the range updates on its own. Then add the same name to your budget or summary tab.
