Google Forms responses to dashboard

Form responses charted straight from the linked sheet.

Download the responses from the linked Google Sheet and drop the CSV here. The Timestamp column is written in the sheet owner's locale as M/D/YYYY rather than ISO, which every other tool guesses wrong for the first twelve days of a month. This page checks the whole column before deciding, splits comma-joined checkbox answers, and buckets any zero to ten question into NPS.

Prefer the full explorer? Open the app, or start from the generic dashboard builder.

Locale dates resolved
The whole Timestamp column is scanned before a date format is chosen.
Checkbox answers split
Comma-joined multi-select cells become countable individual options.
NPS bucketed
A zero to ten question becomes promoters, passives and detractors rather than an average.
Nothing uploaded
Email addresses and free-text answers stay in your browser tab.

The timestamp format depends on whoever created the form

Google Forms writes its Timestamp column using the locale of the spreadsheet, so a form created by someone in Chicago produces 4/8/2026 14:22:11 and one created by a colleague in Manchester produces 08/04/2026 14:22:11. Same instant, different text, and no indication in the file which convention is in play. Import either into a tool that assumes the other and every date up to the twelfth of the month lands on the wrong day while everything after it fails to parse at all.

The only robust fix is to look at the whole column before committing. If any value has a first component above twelve, the format must be day first. If any has a second component above twelve, it must be month first. If neither, the file is genuinely ambiguous and something has to ask. That is the check this page runs, and it is why a Google Forms export loads correctly here and sideways almost everywhere else.

How to export from Google Forms

  1. Open the form's responses In Google Forms, open the form and choose the Responses tab. The summary here is often enough for simple counts, but not for cross-tabulation.
  2. Link or open the response spreadsheet The green sheet icon creates or opens the linked Google Sheet. Every submission appends a row to it in real time.
  3. Download as CSV from the sheet In the sheet, choose File, then Download, then Comma Separated Values. Export from the sheet rather than from Forms, since the sheet is the complete record.
  4. Note whose locale the sheet uses File, then Settings shows the spreadsheet locale, which is what decides the timestamp format. Worth a glance if you plan to share the file.
  5. Drop it here The date format is detected from the data, every choice question becomes a breakdown, and checkbox answers are split into individual options.

The linked sheet grows every time somebody submits, so an export is a snapshot. Two exports taken a day apart will legitimately have different row counts, and that is not a data problem.

Try with sample Google Forms data (the same columns, 90 rows, no upload needed).

What the dashboard shows

Every panel below is built from a column that is actually in the export, named the way Google Forms names it.

  • Responses over time. Timestamp bucketed by day once the locale question is settled, which shows the effect of each reminder you sent.
  • NPS breakdown. The zero to ten question split into promoters, passives and detractors with the net score, rather than a mean that means nothing.
  • Every choice question as a bar. Named with the question text, so panel titles read as the questions you asked.
  • Segment cross-tabs. Department against satisfaction, or office against recommendation, which is where an internal survey earns its keep.
  • Checkbox options counted individually. Split out of the comma-joined cell so each option has a real count rather than every combination being its own value.
  • Free text kept readable. Open answers stay in the grid and filter along with every chart click.
Sample header row
Timestamp,Email Address,Department,How satisfied are you with your team's tooling?,How likely are you to recommend working here? (0-10),Which office are you based in?,How many days a week are you in the office?,What should we fix first?,Anything you want to add?

Google Forms export details

  • Timestamp follows the sheet's locale. M/D/YYYY or D/M/YYYY with no indication which. Ambiguous for the first twelve days of every month, which is when most damage happens.
  • Headers are the question text. Long, punctuated, and renamed silently whenever somebody edits the question. Older responses keep the old column, so a merged file gets two columns for one question.
  • Checkbox answers are comma-joined. One cell holding every option a respondent picked. An option label containing a comma is then indistinguishable from two options.
  • Email Address only appears if you collected it. It is a form setting. When off, responses are genuinely anonymous and there is no identifier at all beyond the timestamp.
  • The sheet keeps growing. An export is a point in time. Comparing two exports taken on different days will show different totals for reasons that are entirely benign.
  • Manual edits to the sheet are possible. Anyone with edit access can change a response after the fact, and nothing records that they did. The sheet is not an immutable log.

Resolve the date format from the data, split the checkbox cells, and never assume the sheet is untouched. Google Forms is the least ceremonious survey tool there is, and its export is fine once those three things are handled.

Frequently asked questions

Why are my dates wrong by a few days?

Because Google Forms writes the timestamp in the spreadsheet's locale, which may be month first or day first, and your importer guessed the other one. For dates after the twelfth the mismatch usually causes a parse failure you notice; before the twelfth it silently produces a plausible wrong date. Scanning the entire column for a value above twelve in either position resolves it, which is what happens here.

How do I count checkbox answers?

The cell contains every option a respondent selected, comma-joined, so treating it as a single value gives you one bar per unique combination rather than per option. Splitting on the comma and counting each option separately is what you want. The one case that breaks is an option whose own label contains a comma, which is a good argument for not writing options that way.

Are responses anonymous?

Only if you configured them that way. Collecting email addresses is a form setting, and when it is on, the Email Address column identifies every respondent. For an internal survey where people were told their answers were confidential, that column deserves careful handling. Note also that anyone with edit access to the linked sheet can see the whole thing, including that column.

What happens if I edit a question after responses come in?

Google adds a new column for the new wording and leaves the old one in place with the earlier answers. So a question edited midway through gives you two partially filled columns that are really one question. Nothing marks them as related. If you must edit, do it before you start collecting, or plan to merge the two columns afterwards by hand.

Can I export directly from Forms instead of the sheet?

Forms offers a download, but the linked sheet is the better source. The sheet is the complete accumulating record, it is what most teams already look at, and it exports cleanly as CSV through File and Download. It also lets you see whether anybody has manually edited a response, which the Forms view does not surface at all.

Is the file uploaded when I drop it here?

No. Parsing happens inside your browser tab and nothing is transmitted. Internal surveys collect opinions people expected to stay within the company, sometimes about their managers, and the free-text columns can contain anything at all. Reading the file locally is the only handling that matches what respondents were promised.

Load a form response sheet and see it parse correctly

90 responses with locale-formatted timestamps, a zero to ten question, department and office segments and free-text comments.

Open the sample Google Forms dashboard