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.
- In the first empty column to the right, enter
=COUNTA(A2:F2)=0in row 2, adjusting A:F to your columns, and fill it down. TRUE marks a fully blank row. - Click a header cell and turn on Data > Filter. Filter the helper column to show only TRUE.
- Select the visible row numbers, right-click and choose Delete Row.
- 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.
- Select just that column - for example the ID column - within the data range.
- Go to Home > Find & Select > Go To Special, choose Blanks and click OK.
- 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.
- In an empty area enter
=FILTER(A2:F500,BYROW(A2:F500,LAMBDA(r,COUNTA(r)>0))). - 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))=0as 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.
| Row | Kept or removed | Why |
|---|---|---|
| (all cells empty) | removed | Nothing in any cell |
| (spaces only) | removed | Whitespace is treated as empty |
| Acme, , , 0 | kept | Two cells hold data - a zero is data |
| , , Notes, | kept | One 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
No. A row is removed only when every one of its cells is empty or holds nothing but whitespace. A row with a single value - even a lone zero, which counts as data - is kept in full. That is the whole difference between this and deleting rows after Go To Special > Blanks.
No. Any column that is empty across every surviving row is removed, including one sitting between two populated columns, and the remaining columns close up. Leave the option off if your layout uses empty spacer columns you want to keep.
Something invisible is in it - most often a single space left by an import, or a formula returning an empty string in a cell you thought was clear. A space-only cell is treated as blank here, but a cell holding a zero or the text FALSE is real data and keeps its row.
Yes. Blank rows removed, blank columns removed, and rows remaining all update as soon as the file loads and whenever you toggle the column option, so you can see the effect before committing to a download.
No, only the first sheet, and the download contains that sheet alone. To strip empty rows and columns from every sheet of a workbook at once, the Excel Cleaner's Trim empty edges option does that pass - at the cost of rewriting each sheet as values.