How to import CSV into Google Sheets (4 methods)
CSV (Comma-Separated Values) is the universal format for exporting data from databases, web apps, and other tools. This guide covers 4 ways to get CSV data into Google Sheets: File → Open for standalone imports, File → Import for merging into existing sheets, IMPORTDATA for live URL feeds, and copy-paste for quick one-offs.
⚡ Quick Answer
Go to File → Import → Upload, then drag your CSV file into the dialog. Choose Create new spreadsheet, Replace current sheet, or Append to current sheet. Confirm the separator (usually auto-detected as comma) and click Import data. Your CSV becomes a properly formatted Google Sheet.
📋 4 methods in this guide
- File → Open (new standalone sheet) Simplest
- File → Import (into existing sheet) Most flexible
- IMPORTDATA function (live URL) Auto-refresh
- Copy-paste for quick imports Fastest
File → Open (creates a new sheet)
Simplest way. Uploads your CSV as a standalone Google Sheet file. Good when the CSV is your starting point and you don't have an existing workbook to merge into.
Open the file picker
From any open Google Sheet: File → Open. Or from Google Drive, click + New → File upload.
Switch to Upload tab
In the file picker dialog, click the Upload tab at the top.
Drag and drop or browse
Drag your CSV file into the dialog area, or click Browse and select from your computer.
Wait for the conversion
Sheets automatically converts the CSV into a Google Sheets file. Data lands in a new spreadsheet with proper column separation. The original CSV also gets stored in your Drive.
File → Import (into existing sheet)
Best when you already have a workbook and want to add CSV data to it — as a new tab, appended below existing data, or replacing a current sheet.
Open Import from the existing sheet
Upload your CSV
Same Upload tab process as Method 1 — drag or browse to your file.
Choose the import location
Sheets asks how to handle the data:
• Create new spreadsheet — makes a separate file (same as Method 1)
• Insert new sheet(s) — adds the CSV as a new tab in your current workbook
• Replace spreadsheet — wipes everything and replaces with CSV data
• Replace current sheet — replaces only the active tab
• Append to current sheet — adds rows below existing data on the active tab
Confirm separator and click Import data
Separator options: Detect automatically, Tab, Comma, Custom. Auto-detect works for most CSVs. If your file uses semicolons (common in European locales) or pipes, set the custom separator here.
IMPORTDATA function (live URL feeds)
Pulls CSV data from a public URL directly into your sheet — with live auto-refresh when the source updates. Perfect for public data feeds, exports from web APIs that provide direct CSV URLs, or open data portals.
Basic IMPORTDATA syntax
Enter the formula in an empty cell. Sheets fetches the CSV and spills the data into the cells below.
Specify a custom delimiter
Second argument sets the delimiter (semicolon in this example). Default is comma.
Specify character encoding
Third argument sets the encoding. Use "UTF-8" for international characters, "Latin-1" for Western European legacy files.
Maximum file size: 10 MB. URL must be publicly accessible (no login required). Refresh interval: about 1 hour by default. For larger or authenticated sources, use Google Apps Script or import manually via Method 2.
Copy-paste for quick imports
Fastest for small CSVs. Open the file in a text editor, copy the contents, paste into Sheets, then split.
Open the CSV in a text editor
Any text editor works — Notepad, TextEdit, VS Code. Select all (Ctrl+A) and copy (Ctrl+C).
Paste into Google Sheets
Click cell A1 in an empty sheet, then paste (Ctrl+V). All data lands in column A initially — that's normal.
Split into columns
With the pasted column selected, use Data → Split text to columns. Sheets auto-detects the comma separator and spreads the data into proper columns.
Troubleshooting
Sheets can't detect the correct separator, or your file uses a non-comma delimiter (like semicolons in European CSVs or tabs in TSVs). In the import dialog, change Separator type from "Detect automatically" to the correct one. For IMPORTDATA, use the second argument: =IMPORTDATA(url, ";").
Symptom: "ñ" becomes "ñ" or "é" becomes "é". This is an encoding mismatch — the file is likely in a non-UTF-8 encoding (usually Windows-1252 or Latin-1). Fix by opening the CSV in VS Code, Notepad++, or Sublime Text and re-saving as UTF-8. For IMPORTDATA, use the third argument to specify the encoding.
Sheets tries to auto-detect dates during import, which can go wrong for regional formats (US MM/DD/YYYY vs EU DD/MM/YYYY). If dates look scrambled, before importing: format the CSV date column as text (wrap in quotes or use a leading apostrophe). After import: select the date column and use Format → Number → Date → Custom to specify the correct format.
ZIP codes like "07430" import as 7430. Sheets treats them as numbers. Before importing, prefix the column with an apostrophe in the CSV, or after importing: select the column, then Format → Number → Plain text, and re-enter values with the leading zero.
Which method for which situation?
| Your situation | Best method |
|---|---|
| Fresh CSV, no existing workbook | Method 1 — File Open |
| Adding CSV to an existing workbook | Method 2 — File Import |
| Public data URL that updates over time | Method 3 — IMPORTDATA |
| Small CSV, one-time, need to move fast | Method 4 — Copy-paste |
| Multiple CSVs to merge | Method 2 for each, use "Append to current sheet" |
| File larger than 10 MB | Method 1 or 2 (IMPORTDATA has 10 MB limit) |
Frequently asked questions
How do I import a CSV file into Google Sheets?
Go to File → Import → Upload, then drag your CSV file into the dialog. Choose "Create new spreadsheet" or "Replace current sheet" or "Append to current sheet". Confirm the separator (usually auto-detected as comma) and click Import data. Your CSV becomes a properly formatted Google Sheet with columns separated correctly.
What's the difference between File Open and File Import for CSVs?
File → Open uploads the CSV as a new standalone Google Sheet — the CSV becomes its own spreadsheet file. File → Import brings CSV data into your current sheet — you can replace the sheet, append rows below existing data, or insert as a new tab. Use Open for standalone imports, Import when merging CSV data into an existing workbook.
How do I import CSV data from a URL in Google Sheets?
Use the IMPORTDATA function: =IMPORTDATA("https://example.com/data.csv"). This pulls the CSV data live from the URL into your sheet. The data refreshes automatically when the source updates. Perfect for public CSV feeds, exports from web apps, or open data portals. IMPORTDATA has a 10 MB file size limit.
Why are all my CSV values ending up in one column?
This happens when Sheets can't detect the correct separator, or the CSV uses a non-comma delimiter (like semicolons in European regions or tabs in TSVs). In the import dialog, change "Separator type" from "Detect automatically" to the correct one (Comma, Tab, Semicolon, or Custom). For IMPORTDATA, use the optional second argument: =IMPORTDATA(url, ";") for semicolons.
How do I import a CSV with special characters correctly?
Special characters appearing as gibberish (like "ñ" becoming "ñ") indicate encoding mismatch. Google Sheets expects UTF-8. Convert your CSV to UTF-8 before importing — most text editors (VS Code, Notepad++, Sublime Text) let you save with UTF-8 encoding. Alternatively, use File → Import → Advanced options and specify the source encoding manually.