How to Create a USD Exchange Rates Table in Google Sheets (all currencies)
Overview
This tutorial will teach you how to:
- Set up your CoinAPI account and get your personal API key.
- Build a simple API call to get live exchange rates using the Market Data API or the Exchange Rates API.
- Use Google Sheets’
IMPORTDATA()function to display that data. - Troubleshoot common issues and refresh your data safely.
Skill level: Beginner
Estimated time: 10–15 minutes
Tools needed: Google Sheets, web browser, CoinAPI account
Prerequisite: Get Your API Key
Before starting this tutorial, make sure you have a valid API key.
👉 Getting Started: How to Create Your API Key
Once you have your API key ready, continue to Step 1 below.
Step 1: Open a New Google Sheet
- Go to docs.google.com.
- Create a new blank spreadsheet.
- Name it something like: “Crypto Exchange Rates (CoinAPI)”
Step 2: Understanding the CoinAPI Endpoints
Market Data API:
This is how the endpoint would look when using the Market Data API.
Example endpoint:
Explanation of parameters:
| Parameter | Description |
| USD | The base currency you want to convert from (you can change this to BTC, ETH, etc.) |
| apikey | Your personal CoinAPI key |
| invert=true | if true then rates will be calculated as rate = 1 / actual_rate (eg. USD/BTC as BTC/USD) |
| output_format=csv | Returns data in CSV format for easy import into Google Sheets |
🔗 Link to the full documentation: https://docs.coinapi.io/market-data/rest-api/exchange-rates/get-all-current-rates
Exchange Rates API:
This is how the endpoint would look when using the Exchange Rates API.
Explanation of parameters:
| Parameter | Description |
| USD | The base currency you want to convert from (you can change this to BTC, ETH, etc.) |
| apikey | Your personal CoinAPI key |
| invert=true | if true then rates will be calculated as rate = 1 / actual_rate (eg. USD/BTC as BTC/USD) |
| output_format=csv | Returns data in CSV format for easy import into Google Sheets |
🔗 Link to the full documentation: https://docs.coinapi.io/exchange-rates-api/rest-api-realtime/get-all-current-rates
Step 3: Use IMPORTDATA() in Google Sheets
Choose one of the products above before continuing to this step. The example below is using the Market Data API. You may adjust the URL if you decide to use the Exchange Rates API instead.
In your Google Sheet:
- Click on cell A1.
- Paste the following formula:
- Replace
YOUR_API_KEYwith your actual key. - Press Enter.
- After a few seconds, you’ll see the exchange rate table appear, including timestamps, asset IDs, and conversion values.
About the “External access” warning
When you first enter the formula, you might see a yellow banner like this:
Warning: Some formulas are trying to send and receive data from external parties.
[Allow access]
- Why this appears: Google Sheets is notifying you that your formula is trying to fetch live data from an external website (CoinAPI) — this is a built-in safety check to ensure you approve any outbound connections from your sheet. What to do: Click Allow access to let the sheet connect to CoinAPI. Once allowed, the data will automatically load and continue refreshing normally.
Step 4: Transform the Imported Data into a Table
- In an empty cell (for example, B1), enter:
- You may now optionally hide column A as your helper column.
- Final Result:
- You now have a structured table like:
| time | asset_id_quote | rate |
| 2026-01-28 10:26:03 | BTH | 0.000796871791944904 |
| 2026-01-28 10:26:03 | BURN | 0.000001967066924957 |
| 2026-01-28 10:26:03 | BUY | 0.00828864088531519 |
Step 5: Troubleshooting Common Issues
| Issue | Likely Cause | Fix |
| #REF! or #ERROR! | API key invalid or expired | Verify your key from CoinAPI dashboard |
| “External access warning” popup | Google Sheets asking for permission | Click Allow when prompted |
| No data appearing | URL or parameters misspelled | Double-check the https:// and parameters |
| Too many requests | Hitting API limits | Upgrade your CoinAPI plan or reduce refresh frequency |
Summary
You’ve successfully:
- Connected Google Sheets to CoinAPI
- Imported real-time exchange rates
- Displayed and formatted them directly in your spreadsheet
- You can now use this same approach to track multiple cryptocurrencies, compare assets, or integrate CoinAPI data with other Sheets formulas!