ExcelTool.io

Remove Blank Rows in Excel

Delete every empty row - and optionally empty columns - in one click, then download a clean workbook. No Go To Special, no upload.

Drop your file here or click to upload

Supports .xlsx, .xls, .xlsm, .xlsb, .csv · up to 50MB · or paste a file from your clipboard

How to Delete Blank Rows in Excel

The usual advice - Go To Special, Blanks, Delete - is also the riskiest, because it deletes any row that has a single empty cell. The two methods below remove only rows that are completely empty.

Method 1: A helper column and a filter

Best for: Any version, and data where some rows are only partly filled.

  1. In the first empty column to the right, enter =COUNTA(A2:F2)=0 in row 2, adjusting A:F to your columns, and fill it down. TRUE marks a fully blank row.
  2. Click a header cell and turn on Data > Filter. Filter the helper column to show only TRUE.
  3. Select the visible row numbers, right-click and choose Delete Row.
  4. Clear the filter and delete the helper column.

Method 2: Go To Special on one always-filled column

Best for: When one column is only empty in fully blank rows.

  1. Select just that column - for example the ID column - within the data range.
  2. Go to Home > Find & Select > Go To Special, choose Blanks and click OK.
  3. Go to Home > Cells > Delete > Delete Sheet Rows.

Selecting the whole table here instead of one column deletes every row with any gap in it, which is the classic way to lose data.

Method 3: A formula copy without blanks

Best for: Microsoft 365, when the original must stay untouched.

  1. In an empty area enter =FILTER(A2:F500,BYROW(A2:F500,LAMBDA(r,COUNTA(r)>0))).
  2. The rows that contain anything spill out in their original order.

In Google Sheets

Use the same helper-column filter, or =FILTER(A2:F500,BYROW(A2:F500,LAMBDA(r,COUNTA(r)>0))), which works in Sheets too.

Common mistakes

  • "Blank" cells may not be empty. A formula returning "" or a single space counts as filled for COUNTA. Use =SUMPRODUCT(--(LEN(TRIM(A2:F2))>0))=0 as the helper instead.
  • Sorting also moves blanks to the bottom, but it reorders the data - fine for a list, not for a ledger.

What Counts as Blank

A row is removed only when every cell in it is empty or contains nothing but whitespace. A single space counts as blank, so rows left behind by an import are caught, but a zero, the text FALSE, and a lone punctuation mark are all data and keep their row. That strictness is the point: partial records are never at risk, and the tool will never quietly delete a row because one key column happened to be empty.

RowKept or removedWhy
(all cells empty)removedNothing in any cell
    (spaces only)removedWhitespace is treated as empty
Acme, , , 0keptTwo cells hold data - a zero is data
, , Notes, keptOne populated cell is enough

The Blank Columns Option

Also remove blank columns runs after the rows are dropped, so it judges each column against the rows that survived. A column that is empty everywhere is removed and the remaining columns close up - and that includes a column in the middle of your data, not just trailing ones past the last used cell. It is the right option for a export padded out to a fixed width, and the wrong one for a layout that uses empty columns as deliberate spacing. Because it only runs after row removal, a column that had values only in rows that were entirely blank cannot exist, so the two options never fight.

Reading the Counters

Three numbers appear as soon as the file loads: blank rows removed, blank columns removed, and rows remaining. They are computed on the live result, so toggling the column option updates them immediately and you can see the cost of the choice before downloading anything. A blank-rows count of zero on a sheet that looks full of gaps means those rows are not actually empty - there is a stray space or an empty-string formula in them.

Why This Is Safer Than Go To Special

The usual manual recipe is to select a column, use Go To Special > Blanks, and delete the entire rows that come back. That deletes every row with a gap in that one column, which on a real dataset is usually far more than the empty ones - and the damage is silent. Sorting to push blanks to the bottom is safer but destroys the original row order. This tool tests the whole row, so the only rows it can remove are ones that contain nothing at all.

Edge Cases

Only the first sheet is read, and the download is that sheet alone, written as values in a sheet called Cleaned - formulas become their last results and number formats are not carried over. Removing rows shifts everything below upward, so any formula elsewhere that referenced a row by position will point somewhere new; this is a data-cleanup step, not something to run on a live model. The preview shows the first 20 rows of the result and the download contains all of them. Your original file is never modified.

When a Different Tool Fits Better

To drop rows that are blank in one particular column rather than everywhere, write that as a rule in Filter Excel Rows using is not empty. If the blanks are only part of the mess - padded text, inconsistent case, duplicate rows - Excel Data Cleaner handles all of it in one pass and reports what it changed, and Remove Duplicates deals with repeated rows specifically. To strip empty rows and columns from every sheet of a workbook rather than the first, Excel Cleaner does that pass. And when the empty rows should stay in the file but out of the way, Sort Excel Online pushes blanks to the bottom without deleting anything.

Frequently Asked Questions

Related Tools