Why Does My Google Search Console CSV Look Broken?
Learn why a Google Search Console CSV can open in one column, display odd characters, lose its headings, or fail validation, and how to correct the export safely.
Question: Why does my Google Search Console CSV look broken?
Direct answer: A Search Console CSV often looks broken because the program opening it has guessed the wrong delimiter or character encoding, or because the file's headings or structure changed after export. SearchTriage accepts CSV, ZIP, and XLSX Search Console exports, recognises specific Search Console datasets, and handles several common file variations. It does not repair arbitrary malformed files or turn unrelated CSV data into Search Console evidence.
Start by keeping the original download unchanged. Opening and resaving it in spreadsheet software can alter delimiters, percentages, dates, encoding, quoting, or headers before you know what caused the problem.
If you need to make a fresh download, follow How to export Google Search Console data.
First decide whether the file is broken or merely displayed badly
A CSV is plain text. It stores fields separated by a delimiter; it does not store spreadsheet column widths, fonts, filters, or display settings. When Excel or another spreadsheet opens every value in one column, the underlying rows may still be valid. The application may simply have expected a comma while the file uses a semicolon or tab.
Open a copy in a plain-text editor and inspect the first few lines. A normal query export may resemble this sanitized example:
```csv
Top queries,Clicks,Impressions,CTR,Position
example search,12,450,2.67%,8.4
```
A page export may begin like this:
```csv
Top pages,Clicks,Impressions,CTR,Position
https://example.com/example-page,18,920,1.96%,11.2
```
If the separators and row endings are visible in plain text, import the file through the correct delimiter option in your spreadsheet instead of double-clicking it and accepting a bad guess.
Which headings does SearchTriage expect?
For useful query-led analysis, keep the standard Search Console fields:
- `Query` or `Top queries`;
- `Clicks`;
- `Impressions`;
- `CTR`; and
- `Position`, `Avg. position`, or `Average position`.
For page data, the identifying column may be `Page`, `Top pages`, or `URL`, alongside the same metrics. A Dates dataset needs `Date`, `Clicks`, and `Impressions`; position and CTR are also read when present.
SearchTriage normalises capitalisation and extra whitespace in headings. It also checks up to the first 30 CSV rows for a recognisable header, which helps with exports containing introductory rows. It does not guess the meaning of arbitrary renamed columns.
For example, this is recognisable:
```csv
Query,Clicks,Impressions,CTR,Average position
```
This is not enough for SearchTriage to identify as a query export:
```csv
Keyword,Visits,Views,Click rate,Rank
```
Even if those labels seem similar to a person, they are not the Search Console field names the importer validates.
Localised or unexpected headings
The current importer recognises the supported English header names and a small set of English aliases. It lowercases headings and collapses whitespace, but it does not translate localised column names.
If Search Console or spreadsheet software has produced headings in another language, SearchTriage may report that the file does not look like a query or page export. The safest response is to export again with the Search Console interface in English, or restore the original supported headings without changing the data beneath them.
Do not rename a Google Ads Keyword Planner export to resemble Search Console. SearchTriage checks for common Keyword Planner fields and warns that keyword statistics are not a Search Console performance export.
Delimiters and quoting
SearchTriage detects comma, tab, and semicolon delimiters by inspecting the file. Standard CSV quoting is handled during parsing, so a comma inside a properly quoted query is kept inside that field:
```csv
Query,Clicks,Impressions,CTR,Position
"red, green and blue widgets",4,120,3.33%,14.1
```
Properly quoted line breaks inside a cell can also be parsed. Arbitrary broken quotes or unquoted line breaks are different: they can split one logical record into several rows, and SearchTriage does not attempt to reconstruct the author's intent.
If the file was edited by hand, re-exporting is usually safer than trying to repair hundreds of ambiguous rows. If the file only opens in one spreadsheet column, import it again using the delimiter that is actually present.
Character encoding and strange symbols
SearchTriage handles:
- UTF-8, with or without its common byte-order mark;
- UTF-16 little-endian or big-endian when the file includes the corresponding marker; and
- Windows-1252 as a fallback when the sample is not valid UTF-8.
The importer converts supported input to UTF-8 for parsing. It also strips null bytes and the UTF-8 marker from values.
This does not make every damaged encoding recoverable. A file that mixes encodings, contains binary control characters, or has already replaced characters with question marks may be rejected or remain lossy. Return to the original Search Console download rather than repeatedly resaving the damaged copy.
Line breaks in headings or cells
Whitespace inside a parsed heading is collapsed, so a quoted heading that becomes `Top queries` after whitespace normalisation may still work. A line break that physically splits an unquoted header or record can prevent the dataset from being recognised.
The difference is quoting. In valid CSV, a field containing a line break is enclosed correctly and remains one field. In malformed CSV, the parser has no reliable way to know whether the next line is a continuation or a new row.
Inspect the first 30 lines in a text editor. If the header itself is fragmented or quotation marks do not balance, download a clean export again.
ZIP archives with several CSV files
SearchTriage accepts ZIP archives containing multiple CSV files. This matches a normal multi-file Search Console export: Queries, Pages, Dates, Countries, Devices, Search appearance, and Filters may be separate entries.
Only CSV entries inside a ZIP are parsed as datasets. Non-CSV entries are ignored. The archive is rejected when it cannot be opened safely, contains too many entries, expands beyond the configured limit, includes a suspiciously compressed member, or contains no usable CSV files.
Under the current default limits, an import request may contain up to 12 uploaded files, each file may be up to 25 MB, the combined request may be up to 50 MB, a ZIP may contain up to 25 entries and expand to no more than 50 MB, and parsing stops beyond 250,000 rows. These are safety limits, not targets for how large a report should be.
Keep the original ZIP structure where possible. Extracting, editing, and recompressing files introduces more opportunities to change encoding or headers.
How XLSX worksheets are recognised
SearchTriage accepts modern `.xlsx` workbooks. It reads the workbook's worksheets and applies the same dataset recognition used for CSV headers. Recognisable worksheets are parsed; unrelated worksheets do not become query or page evidence.
An XLSX file must be a real readable workbook, not a renamed CSV or an older `.xls` file with a changed extension. SearchTriage rejects a file that does not contain the expected XLSX workbook structure, contains oversized XML members, exceeds row safety limits, or has no readable worksheets.
SearchTriage does not accept `.xls`, JSON, database dumps, PDF reports, or arbitrary spreadsheet formats as GSC imports.
Unsupported and unrelated files
The filename is not proof of the data source. A CSV can contain advertising keywords, analytics events, sales leads, invoices, or almost anything else.
SearchTriage checks both the extension and the file structure. It may reject a file immediately when it is empty, disguised binary data, too large, or unsafe. A readable CSV with unrecognised headings may be parsed as an unknown file and produce a warning instead. If the full import contains no query or page rows, SearchTriage explains that it could not find a suitable Search Console performance dataset.
The Free SEO Analyzer specifically needs a Queries or Pages dataset. A Pages-only upload can produce a more limited page-led result because it cannot reveal the searches behind those pages.
What common validation messages mean
“SearchTriage accepts CSV, ZIP, and XLSX exports.”
The extension is unsupported. Renaming the file does not convert it; export it in a supported format.
“Did not contain a recognisable Search Console header row.”
The importer inspected the opening rows but did not find supported dataset headings. Check localisation, renamed columns, damaged rows, and whether this is the correct report.
“Did not look like a Search Console query or page export.”
The file is readable, but its headings do not identify a Queries or Pages dataset.
“No Queries or Pages dataset was found.”
The upload may contain supporting data such as Dates or Devices, but the analyzer lacks the query or page evidence required for a report.
“Does not look like a valid XLSX workbook.”
The file's internal structure does not match a readable modern Excel workbook. Obtain the original `.xlsx` export rather than changing the filename.
SearchTriage reports the problem it can verify. It does not silently invent missing fields or repair malformed data.
When should you export again?
Export a fresh file when:
- headings have been translated, renamed, merged, or split;
- the first row no longer contains the original fields;
- quotes or row endings were damaged during editing;
- characters were already replaced during a bad encoding conversion;
- an `.xls`, JSON, or unrelated CSV was supplied;
- a ZIP was repackaged incorrectly;
- the workbook cannot be opened normally; or
- SearchTriage cannot find a Queries or Pages dataset in what should be a performance export.
Use the original Search Console Performance report and avoid editing the download before the first import. Retain a separate copy if you need to prepare the data for another tool.
You can test a supported export with the Free SEO Analyzer. For upload validation, storage, and deletion details, see Security and data handling.