The manual import of a published online CSV file from an app or Google Drive to Google Sheets is a breeze. A few clicks will do the job. If you want to automate this process, you will need to write custom code with Google Apps Script. But, can I do this without any coding? Now you can. Spend a few minutes exploring Coupler.io, a Google Sheets add-on that lets you automate parsing and importing online CSV data into Google Sheets.
Why convert CSV into spreadsheets?
The CSV, which stands for comma separated values, is mostly a go-between data format. It is supported by versatile apps and most databases. Here is how it usually works:
- you export data from a source app into a CSV file
- you import the CSV file to a target app
In our case, Google Sheets is the target app. Users opt for this multifunctional tool to handle calculation-centered and data visualization tasks. Entrepreneurs and small business owners do budgeting, accounting, and tax calculations in spreadsheets. Data analysts build custom reporting and versatile performance dashboards. You might have your own use case and reasons to automate CSV import to Google Sheets. Now, let’s discover how this can be done in less than 5 minutes of your time.
How to automate CSV data import into Google Sheets?
Coupler.io is a Google Sheets add-on that lets you import data from different sources including CSV files. Install it via this link or find it on the G Suite Marketplace:
For more information about the add-on and available integrations, please visit the Coupler.io home page.
Set up a CSV importer
An importer is an integration that connects Google Sheets to a specific app or data source. Since we’re going to import CSV data, we need to set up a CSV importer. For this, open Coupler.io in the Add-ons tab of a spreadsheet, click on the +Add Importer button and choose CSV. To set it up, fill in the required fields.
- Title – add the name of your importer.
- Sheet Name – add the name of the sheet which will be receiving data.
- CSV URL – insert the URL of your CSV file to export data from.
- Automatic data refresh – choose the frequency of automatic resync of data. If you don’t need this feature, disable it by clicking on the toggle.
Additional fields and Settings
Additional fields include: HTTP Method, Request headers, URL query string, Request body, Fields, and Skip rows. For more on them and the Settings section, refer to Coupler.io knowledge base.
With all the required fields filled in, click Add Importer. After that, you can run your CSV importer and welcome your CSV data into a newly created sheet. Here is how the entire flow looks:
IMPORTDATA function: can I use it to automate importing?
In Google Sheets, there is a dedicated function, IMPORTDATA, for importing data from a given URL in CSV or TSV format. It lets you get your data from a published online CSV file within a few seconds, as follows:
Can this function be an equal alternative to Coupler.io? Let’s see.
IMPORTDATA vs. Coupler.io CSV importer
Read a detailed comparison of IMPORTDATA and Coupler.io CSV importer with examples in our blog post, IMPORTDATA Function: Why It’s Not the Best Option to Import CSV Data to Google Sheets. And here is a TL;DR version of it:
|You are not safe from data loss, as each error cleans your data.||Output data type||You are always safe from total data loss if any error occurs.|
|You can make up to 50 calls on a single spreadsheet.||Limitations & errors||Only if the result is too big to be placed according to Google Spreadsheets limits or Google Sheets API limits that are used to place data.|
|No support has been officially claimed.||Secure CSV link as a data source||You can use the Request headers field to provide authentication credentials and use data from secured data sources.|
|No support has been officially claimed.||Data update on demand||You can RUN your importers any time you need to update data with one click of a button.|
|No support has been officially claimed.||Scheduling||You can set up scheduled data updates.|
|No support has been officially claimed.||Global data update||You can use the RUN ALL button or scheduling option.|
|Available with the help of the QUERY function.||Fields selection||You can cut off data you don’t need using the Fields parameter. This will let you import only the selected columns.|
|No support has been officially claimed.||Fields reordering||You can set up fields order for output.|
|Available with the help of the QUERY function.||Skip rows||You can easily skip rows with data you don’t need using the Skip rows parameter.|
|The cell in which you applied the function will be the target cell to get output.||Insert data at cell address||You can set up the target cell to get output where you need it.|
|No support has been officially claimed.||Appending option||You can place data from multiple sources (with the same fields structure and order) using the append mode together with the skip lines parameter. This will let you get a single data set to work with (for example, to combine monthly reports into a single year report).|
|Available with the help of the QUERY function.||Advanced requests||You can make more precise requests, such as time ranges, users and others, using the URL query string parameter. This is useful when you import data from secured connections for API-styled requests such as reports from time-tracking tools (Toggl, Clockify) or similar ones.|
A combination of IMPORTDATA and QUERY can give you a wider scope of data import capabilities. We’ve blogged about the Google Sheets Query Function and what you can do with it. For the rest, the CSV importer looks more practical.
IMPORTDATA lacks any automation features. So, each time you need to update your imported CSV data, you’ll have to do it manually. The only way to automate importing purely in Google Sheets is to write a code using Google Apps Script. You may check out Stack Overflow and discover a code sample provided by one of the users. But should you?
Coupler.io already has this feature implemented, and all you have to do is to choose the frequency for automatic data refresh.
Let’s explore how it may look in a real-life use case.
Income monitor based on a CSV report
We have a database system, which generates a CSV report. We’ve been inspired by the Railsware video: “How to track income” and decided to build our own real-time income monitor. For this, the data has to be updated as frequently as possible.
So, first, we set up a CSV importer in Coupler.io, which will update our data every hour. Once the raw data is in the spreadsheet, we can use the power of Google Sheets: two formulas and a Geo chart to tailor a simple income tracker.
Now, with the automatic data refresh, your chart will update every hour, like this:
How to automate CSV import from a Google Drive folder
To automate CSV import from a Google Drive folder, you need to use a downloadable file link. Here is a guide how to create one:
- Go to Google Drive and right-click on your spreadsheet
- Select “Get shareable link” and then toggle on “Link sharing“.
- Copy a shareable link to your file. It will look like this:
- Take the “id” part of your shareable link. In our example, this is:
- Use the downloadable link structure:
- Construct a new URL by attaching the “id” part of your shareable link to the downloadable link structure, as follows:
The id of your file should remain unchanged. Here is how it looks:
|Shareable file link||Downloadable file link|
Kudos to Maris Veide from Excelify.io for the tip.
Note: We do not recommend you automate data import from public shared CSV files since it may violate the GDPR requirements. Be attentive and careful.
To wrap up: program CSV import without a single piece of code
When routine tasks are automated, this lets you focus on other valuable jobs that need to be done. Thus, you save your time and increase your efficiency. Coupler.io was specifically designed to make this happen. You’ll only need to spend less than 5 minutes on the installation and setup. After that, you’ll get a fully automated CSV data importer, which you can use for your project. You may also be interested in other integrations available with the use of the CSV importer: Clockify to Google Sheets and Jira Server to Google Sheets.
Do you have any questions? Feel free to ask them in the comments section. Good luck!Back to Blog