Spreadsheets From Scratch: A Complete Beginner's Guide to Google Sheets
Section 10 of 13

How to Sort and Filter Data in Google Sheets

Organizing Data: Sorting, Filtering, and Finding What You Need

You've now built some powerful skills: you can enter data, format it meaningfully, write formulas that calculate, and use lookup functions to connect pieces of data across your spreadsheet. But here's where things get real — the moment your spreadsheet grows from a tidy list of 10 rows into something with 200 rows, or 500. All those powerful formulas and lookups depend on your data being findable and organized in a way that your formulas can actually work with. That's where this section comes in.

Think back to the VLOOKUP work you just did: it worked because your data had a clear structure — a lookup table with a search column and a returns column, organized in a predictable way. The better organized your data is from the start, the more easily you can sort it, filter it, and build formulas that work with it. This section is about learning to organize your data so thoroughly that sorting, filtering, and finding what you need becomes not just possible, but fast and reliable — no matter how large your spreadsheet grows.

The Foundation: What "Structured Data" Actually Means

Before we touch a single menu, let's talk about structured data — because it's the concept that makes everything in this section possible, and it's the same concept that made your VLOOKUP formulas work in the first place.

Imagine a filing cabinet. If you've ever used one that's been organized by someone who cared, you know the feeling: every folder is labeled, everything is in the right drawer, and you can find what you need in 30 seconds. Now imagine a filing cabinet where someone just stuffed papers in randomly, sometimes wrote the date on the front, sometimes didn't, and occasionally put three documents in one folder because "they're related." Finding anything in that second cabinet is a nightmare.

Structured data is the filing cabinet that works. In spreadsheet terms, it has two defining features:

One: A header row at the top. The very first row contains column names that describe what's in each column — "Date," "Region," "Salesperson," "Amount," and so on. This row stays put. It doesn't contain data; it contains labels for data.

Two: One value per cell. Each cell holds exactly one piece of information. Not "Jane Smith, Dallas" in one cell. Not "47 items, $340" in one cell. Jane goes in the Name cell. Dallas goes in the Location cell. 47 goes in one column, $340 in another. It sounds fussy, but this is what makes sorting, filtering, and formulas possible at all.

That's it. Those two things. If your data has them, you can sort, filter, and analyze it six months later without wanting to set it on fire. Skip them, and you're building on sand.

Remember: A few extra minutes upfront setting up clean structure saves hours of frustration later. Future you — the version reviewing this spreadsheet in six months — will be genuinely grateful.

Sorting: Putting Your Data in Order

Sorting rearranges your rows so they appear in a specific sequence. The rows don't disappear, they don't get deleted — they just shuffle into a new order. Everything in a row travels together, so if row 7 has Jane, Dallas, $340 before sorting, those three values stay locked together after sorting.

Sorting a Single Column (The Quick Way)

The fastest way to sort in Google Sheets: right-click on the column letter at the top of the column you want to sort by, and choose "Sort sheet A → Z" or "Sort sheet Z → A."

Here's what those do:

  • A → Z for text means alphabetical order (Apple before Banana). For numbers, it means smallest to largest. For dates, it means oldest to newest.
  • Z → A reverses all of that.

This approach is genuinely fast and works well when you need a quick sort. The important thing to know: this sorts the entire sheet, not just the column. Your rows stay intact. The spreadsheet is just rearranging which row appears where.

Sorting a Range (More Control)

If you want more control — especially if you only want to sort part of your data, or if you have a header row that shouldn't get sorted into the mix — use the Data menu → Sort range → Advanced range sorting options. Google's official sort and filter documentation walks through this in detail, and here's the flow:

  1. Click anywhere in your data (or highlight the specific range you want to sort)
  2. Go to Data → Sort range → Advanced range sorting options
  3. Check "Data has header row" if your first row has column labels (it almost certainly does)
  4. Choose which column to sort by from the dropdown
  5. Choose Ascending (A→Z) or Descending (Z→A)
  6. Click Sort

That "Data has header row" checkbox is doing something important: it tells Google Sheets not to include your header row in the sort. Without it checked, "Region" and "Salesperson" and "Amount" might end up alphabetized right alongside your actual data — not what you want.

graph TD
    A[Click anywhere in your data] --> B[Data → Sort range → Advanced range sorting options]
    B --> C{Does row 1 have column headers?}
    C -->|Yes| D[Check 'Data has header row']
    C -->|No| E[Leave unchecked]
    D --> F[Choose column to sort by]
    E --> F
    F --> G[Choose Ascending or Descending]
    G --> H[Click Sort]

Multi-Column Sorting: When One Sort Isn't Enough

Here's a scenario: you have a list of 200 customers, and you want to sort them alphabetically by last name. Easy enough. But what happens when there are five people named "Johnson"? In what order should they appear?

This is where multi-column sorting saves you. You sort by Last Name first, then — within each group of people who share a last name — you sort by First Name.

In the Advanced range sorting options dialog, after you've set your first sort column, look for the "Add another sort column" button. Click it, and you'll get a second row where you can set your tiebreaker sort. The order matters here. You're saying: "Sort by Column A first. When there's a tie in Column A, use Column B to break the tie." You can add as many levels as you need, though more than three starts to feel like overkill for most everyday tasks.

Real-world example: a sales log sorted by Region first (so all the Northeast rows are together, then all the Southeast rows, etc.), then by Date within each region (newest first). Two clicks in the dialog, and your messy sales log becomes something you can actually read and analyze.

Sorting by Color

This one surprises people: Google Sheets can sort by cell fill color or text color. If you've color-coded certain rows — maybe you highlighted high-priority items in yellow, or flagged overdue items in red — you can bring all the red-highlighted rows to the top with a sort.

As the Google Sheets documentation explains, look for "Sort by color" when you click the filter dropdown. Choose whether you're sorting by fill color or text color, then choose which color moves to the top.

One honest thing: color-based sorting is better as a viewing convenience than as a primary organizational strategy. Colors aren't searchable, they don't survive data exports cleanly, and new collaborators won't know your color system. Use it as a bonus feature, not a core one.

Filtering: Temporarily Hiding What You Don't Need

Sorting reorders your rows. Filtering does something different: it hides rows that don't match your criteria, so you can focus on exactly the rows you care about right now. This is a crucial distinction. When you filter your data, nothing is deleted. The hidden rows are still there — they're just temporarily invisible. Turn off the filter and everything comes back. It's like drawing the blinds on certain rows.

Turning on the Filter

To activate filtering in Google Sheets:

  1. Click anywhere in your data
  2. Go to Data → Create a filter

Something visual happens immediately: small funnel or dropdown icons appear in your header row cells. Those little green triangles are your filter controls. Click the triangle in any column header to open the filter options for that column.

A spreadsheet header row showing the green filter dropdown arrows that appear after creating a filter

Warning: When you create a regular filter, anyone else with access to your spreadsheet will see the filter too. If you're working solo, no problem. If you're collaborating, be aware — your filter affects their view. This is why Filter Views exist.

Filtering by Value: Checking and Unchecking

Click the filter triangle on any column, and you'll see a list of every unique value in that column — with checkboxes next to each one. By default, all boxes are checked (meaning all rows are visible).

To filter, simply uncheck the values you don't want to see. Want to see only transactions from the Northeast region? Uncheck everything except "Northeast" and click OK. Every row where Region isn't "Northeast" disappears from view.

You'll notice at the bottom of the sheet, Google Sheets shows you something like "Showing 47 of 200 rows" — a gentle reminder that you're looking at filtered data, not all of it.

To quickly select just one value and deselect everything else: uncheck "Select all" at the top of the list first (this unchecks everything at once), then check just the value you want.

Filtering by Condition: More Powerful Criteria

Value filtering works great when you want specific items from a list. But sometimes you need something more nuanced: "show me all rows where Amount is greater than $500" or "show me all rows where the date is before March 1st."

That's where Filter by condition comes in. In the filter dropdown for any column, look for the "Filter by condition" option. You'll get a dropdown of conditions to choose from:

  • Is empty / Is not empty — great for finding incomplete records
  • Text contains / does not contain — find rows mentioning "Chicago" anywhere in a cell
  • Text starts with / ends with — useful for code-based data
  • Greater than / Less than / Greater than or equal to — for numerical and date comparisons
  • Is between — show rows where a number falls within a range
  • Date is before / Date is after / Date is between — powerful for time-based filtering
  • Custom formula is — for advanced users who want to write their own logic

These conditions work on the column you've selected, not the entire sheet. So you can filter one column by condition and another column by value at the same time — they stack together, showing only rows that meet all your active filters.

Putting It Together: A Practical Example

Let's make this concrete. Imagine you're managing a sales log with 300 rows. Each row represents one transaction, with columns for Date, Region, Salesperson, Amount, and Status.

Your boss asks: "Can you show me all transactions above $500 from the Southeast region?"

Here's how you do it in about 60 seconds:

  1. Click anywhere in your data, go to Data → Create a filter
  2. Click the filter arrow on the Region column
  3. Uncheck everything except "Southeast," click OK
  4. Click the filter arrow on the Amount column
  5. Choose Filter by condition → Greater than, type 500, click OK

You now see only Southeast transactions above $500. The other 280+ rows are still there — just hidden. You can copy this filtered view, screenshot it, or share it as a Filter View (more on that next).

To undo everything: Data → Remove filter brings all your rows back instantly.

Tip: After filtering, you can sort the results too. Sort the filtered view by Amount (largest to smallest) to see your biggest Southeast deals at the top. Sorting and filtering work together beautifully.

Filter Views: Saving Filters Without Affecting Others

Regular filters are like turning the lights off in a room — everyone in the room loses the light. Filter Views are like putting on sunglasses — you change what you see without affecting anyone else.

According to Google's documentation, if you only have view permission on a spreadsheet, you can create a temporary filter view that only you can use — your collaborators continue to see the full unfiltered data.

To create a Filter View:

  1. Go to Data → Create filter view (note: this is different from "Create a filter")
  2. A dark gray bar appears at the top of your sheet with a text field where you can name your view (call it something descriptive, like "Southeast > $500" or "Q3 Overdue Items")
  3. Apply your sorts and filters — these work exactly like regular filters
  4. Click Save View in the top-right corner of the dark bar
  5. Your view is saved and accessible anytime via Data → Filter views → [Your View Name]
graph LR
    A[Your View: Filtered] --> B[You see filtered rows]
    A --> C[Collaborators see full data]
    D[Regular Filter] --> E[Everyone sees filtered rows]

Saved Filter Views stick around even after you close the spreadsheet. Next week, when your boss asks for that Southeast report again, you just open the Filter View instead of re-creating the filter from scratch. That's the kind of small efficiency that compounds into real time savings over months and years of work.

You can have multiple Filter Views saved — one for each common analysis you run. Think of them as preset lenses you can snap on and off your spreadsheet.

To delete a Filter View you no longer need: open the view, click the gear icon in the gray bar, and choose "Delete."

Clearing vs. Removing Filters

These two things sound similar but do different things:

Clearing a filter means resetting the filter criteria for one column while keeping the filter active on others. Click the filter triangle on a column and choose "Select all" to restore all values in that column's filter.

Removing the filter entirely means turning off the filter mode completely, restoring all hidden rows and removing the filter arrows from your header. Go to Data → Remove filter to do this.

A common beginner moment: someone removes a filter, panics because their sorted data "looks different," then realizes everything is still there — just no longer filtered. Nothing was lost. The data is fine. It happens to everyone.

How Good Data Entry Protects You Later

I want to come back to something I mentioned at the start, because it's worth emphasizing: the way you enter data determines how well sorting and filtering can work for you later.

A few habits that pay enormous dividends:

Be consistent with text values. If "Northeast" is sometimes spelled "north east" or "NE" or "Northeast " (with a trailing space), your filter by value will show three separate entries instead of one. Worse, filtering for "Northeast" will miss the other two. Consistency is everything. Seriously — this small choice changes everything about how your data behaves.

Use real dates, not text that looks like dates. "March 15" typed as plain text can't be filtered with date conditions. Enter actual dates (3/15/2024 or March 15, 2024) so Sheets recognizes them as date values and unlocks all the date-based filter conditions.

Avoid merged cells in data tables. Merged cells and filters are mortal enemies. Google's support documentation notes that merged cells or hidden rows can cause the "Create a filter" option to become unavailable. Keep your data table clean — save merging for title rows and decorative headers outside your data range.

Keep your header row as a single row. Two-row headers (common in fancy-looking reports) confuse filter logic. One header row, one data row, every time. Simple and clean.

These aren't pedantic rules — they're the difference between filters that work perfectly and filters that make you want to throw your laptop.

The Bigger Picture

Sorting and filtering are where spreadsheets start to feel genuinely powerful. Before this point in the course, we've been building and calculating. Now we're querying — asking the data questions and getting answers back.

And here's something worth sitting with: everything you've done in this section is non-destructive. Sorting doesn't delete data. Filtering hides it, not removes it. Filter Views change your view only. You can explore your data aggressively, sort it six different ways, filter it down to three rows — and then put it all back with a single click. That's an incredibly forgiving environment for learning and experimenting.

The same structured data — that clean header row, one-value-per-cell table — that makes sorting and filtering work so well is also the foundation for charts, pivot tables, and every advanced analysis feature you'll ever use in Google Sheets. The Google Workspace productivity guides treat structured data as the entry point for all data analysis features, and that's not an accident. Get the structure right once, and everything else gets easier.

In the next section, we'll take that same well-organized data and turn it into something visual — charts and graphs that communicate your findings at a glance. But first, take a moment to appreciate what you've built: a spreadsheet you can navigate like a pro.