AppGarden Form Response Cleaner logo AppGarden

Form Response Cleaner

Why you shouldn't sort or edit the Form Responses tab (and what to do instead)

The tab Google Forms™ writes to looks like any other sheet, so people sort it, fix typos in it and add columns to it. Here is what that quietly breaks, and where to do the same work instead.

What goes wrong

Sorting

New responses are added below the last row, whatever order the tab is in. Sort by name on Monday and by Friday the tab is sorted down to row 80, then random. Worse, if you sort a selection without expanding it to every column, the sorted columns move and the others stay put. Answers end up next to the wrong person, and nothing flags it.

Fixing typos and answers

Editing a cell changes the sheet, not the form. The form's own summary charts, a CSV download from the form, and any new spreadsheet you link to the form all still show the original answer. The edit is also invisible: nobody can tell which cells are what people submitted and which were changed afterwards.

Deleting rows

Deleting a test entry or a duplicate from the sheet doesn't delete it from the form. The counts disagree from then on. If you ever relink the form to a new spreadsheet, every deleted row comes back.

Adding formulas beside the responses

A formula you fill down in a spare column next to the answers stops at the last row you filled. New responses arrive without it, so the column is quietly missing values. The same applies to columns of notes: they belong to a row number, not to a response.

What to do instead

Treat the responses tab as read-only

It is the record of what people submitted. To stop yourself and others editing it by accident, use Data › Protect sheets and ranges, choose the tab, and set it to Show a warning when editing this range. That still lets the form add new responses.

Sort and filter in a filter view

Data › Filter views › Create new filter view lets you sort and filter without changing the tab for anyone else. You can save it and come back to it, and the underlying rows never move.

Do the real work on a separate tab

A working tab that reads from the responses keeps up with new submissions on its own:

=SORT(FILTER('Form Responses 1'!A2:F, 'Form Responses 1'!A2:A <> ""), 2, TRUE)

That shows every response sorted by column B, and it updates as responses arrive. Formulas that need to cover every response should be ARRAYFORMULAs at the top of a column on the working tab, not filled down by hand.

Keep corrections on the working tab, keyed to the response

If a response genuinely needs correcting, record the correction on the working tab next to something that identifies the response, such as the timestamp plus email. Don't key it to a row number. The original stays intact, and the correction is visible and can be undone.

Most jobs people do on the responses tab have a safe version elsewhere: splitting checkbox answers, removing duplicates and shortening headers.

The one-click version

The add-on never writes to the responses tab: not values, not formats, not notes, not filters. Every output is a new tab to its right, rebuilt from the responses in one click when new ones arrive.

Form Response Cleaner is a Google Sheets™ add-on: free for up to 250 responses, and your responses tab is never touched.

More on Google Form™ responses

Google, Google Forms™, Google Sheets™ and Google Workspace™ are trademarks of Google LLC. Form Response Cleaner is not affiliated with or endorsed by Google.