Tracking cryptocurrency prices in real time is essential for investors, traders, and analysts. While many platforms offer live data, integrating that information directly into your workflow can save time and improve accuracy. One powerful — and free — way to do this is by using Google Sheets in combination with the CoinMarketCap API.
Unlike some other crypto data providers, CoinMarketCap does not impose strict IP-based rate limiting that often blocks automated Google Sheets requests. This makes it a more reliable choice compared to alternatives like CoinGecko, which may restrict access after repeated API calls from the same IP.
In this guide, you’ll learn how to set up an automated system to pull live cryptocurrency prices directly into Google Sheets using Apps Script and the CoinMarketCap Pro API. No third-party plugins or paid tools required.
Step 1: Sign Up for CoinMarketCap and Get Your API Key
To begin, you need a free account on CoinMarketCap’s Pro API platform.
- Go to the CoinMarketCap Pro API registration page and sign up for an account.
- Once logged in, navigate to your account dashboard at https://pro.coinmarketcap.com/account.
- Locate the section labeled "API Keys" and generate a new key.
- Copy your API key — you’ll use it shortly in your script.
✅ Tip: Keep your API key secure. Avoid sharing it publicly or committing it to version control systems.
You’ve now completed the first critical step: gaining authorized access to real-time cryptocurrency market data.
Step 2: Create a Google Apps Script to Fetch Crypto Prices
Google Apps Script allows you to extend the functionality of Google Sheets with custom JavaScript code. We’ll use it to call the CoinMarketCap API and retrieve price data.
1. Open a New Google Sheet
- Go to sheets.google.com and create a new blank spreadsheet.
- Click on Extensions > Apps Script to open the script editor.
2. Paste the Following Code
Replace the placeholder API key with your own, and customize the coin list as needed.
function GetCryptoPrice(coins, apiKey) {
try {
let url = "https://pro-api.coinmarketcap.com/v2/cryptocurrency/quotes/latest?slug=" + coins;
const requestOptions = {
method: 'GET',
headers: {
'X-CMC_PRO_API_KEY': apiKey
},
json: true,
};
let result = UrlFetchApp.fetch(url, requestOptions);
let jsonResult = JSON.parse(result.getContentText());
let priceList = coins.split(',');
Object.keys(jsonResult.data).forEach((coin) => {
let pair = [];
pair.push(
jsonResult.data[coin].symbol,
jsonResult.data[coin].quote.USD.price.toFixed(4)
);
const i = priceList.findIndex((ele) => ele === jsonResult.data[coin].slug);
priceList.splice(i, 1, pair);
});
return priceList;
} catch (e) {
console.error("Error fetching data: ", e.message);
return [[e.message, "Error"]];
}
}
// Test function – comment out before deployment
// GetCryptoPrice("ethereum,bitcoin", "your_api_key_here")3. Run a Test
Before connecting to your sheet:
Update the test line at the bottom with:
GetCryptoPrice("ethereum,bitcoin", "your_actual_api_key")- Click the ▶️ Run button in Apps Script.
📌 Important: The first time you run the script, Google will prompt you to authorize permissions. Click “Review Permissions” and allow all necessary access.
After execution, check the Logs (View > Logs) to confirm successful data retrieval.
✅ Once verified, comment out the test line by adding // at the beginning:
// GetCryptoPrice("ethereum,bitcoin", "your_api_key_here")This prevents unnecessary API calls every time the script runs.
Step 3: Pull Live Prices Into Your Google Sheet
Now that your script is working, it’s time to connect it directly to your spreadsheet.
In any cell in your Google Sheet, enter:
=GetCryptoPrice("bitcoin,ethereum,litecoin", "your_api_key_here")📌 Note:
- Use the exact slug names as listed on CoinMarketCap (e.g.,
bitcoin, notbtc). - You can request up to 12 cryptocurrencies per call, which helps stay within API rate limits.
- Each function call counts as one API request — so batching coins is more efficient.
The result will display two columns: Symbol and Price (USD), dynamically updated whenever the sheet recalculates (typically every few minutes unless manually refreshed).
Frequently Asked Questions (FAQ)
Q1: Why use CoinMarketCap instead of CoinGecko?
CoinGecko often blocks requests made from Google Apps Script due to IP-based rate limiting. CoinMarketCap's Pro API offers more stable connectivity and higher reliability for automated scripts.
Q2: How often does the price update?
Google Sheets automatically refreshes Apps Script functions approximately every 5–30 minutes, depending on usage and server load. For faster updates, consider setting up a time-driven trigger in Apps Script (Edit > Current project’s triggers).
Q3: Can I fetch prices for more than 12 coins?
Not in a single call. The CoinMarketCap API limits each request to 12 cryptocurrencies. To track more assets, create multiple functions with different coin groups.
Q4: Is this method free?
Yes — both Google Sheets and the CoinMarketCap Pro API offer free tiers. The free tier includes up to 333 API calls per day, which is sufficient for most personal use cases.
Q5: What happens if my API key is exposed?
If your API key is shared publicly (e.g., in a published script), CoinMarketCap may revoke it for security reasons. Always keep your key private and avoid hardcoding it in public repositories.
Q6: Can I format the output (e.g., color changes based on price)?
Yes! You can enhance your sheet using conditional formatting rules based on price movements. For advanced users, integrate additional scripts to highlight gains/losses or trigger email alerts.
Final Tips for Best Results
- Batch your requests: Combine up to 12 coins per formula to minimize API usage.
- Use named variables: Store your API key in a separate sheet tab (marked hidden) and reference it indirectly for better security.
- Monitor usage: Log into your CoinMarketCap account regularly to check API call volume and remaining quota.
- Error handling: The provided script includes basic error logging — expand it further if building enterprise-level dashboards.
With this setup, you now have a fully functional, self-updating cryptocurrency price tracker — all inside Google Sheets.
Whether you're monitoring a personal portfolio or building a trading dashboard, this integration brings powerful automation within reach of any user familiar with spreadsheets.
Core Keywords:
cryptocurrency price tracker, Google Sheets crypto, CoinMarketCap API, fetch crypto prices, automate crypto data, real-time crypto prices, Google Apps Script crypto
By following this guide, you've unlocked a scalable way to monitor digital asset values without relying on third-party widgets or manual updates — giving you full control over your financial data workflow.