Google Sheets is where many businesses already track their metrics. Now you can connect those spreadsheets directly to Dashello and push the numbers into your dashboard automatically. This guide covers three methods: Google Apps Script for direct integration, Zapier for no-code automation, and Make for visual workflows.
What You'll Need
- A Dashello account - sign up free
- A Google account with access to Google Sheets
- Your Dashello API key (from Settings → API Keys)
Why Connect Google Sheets to Dashello?
Many business owners already track their metrics in Google Sheets - weekly revenue, new leads, project hours, inventory levels. Connecting Sheets to Dashello means those numbers automatically show up in your dashboard alongside data from every other tool. No copy-paste, no double entry, no missed updates.
| Sheet Data | Dashello Metric | Update Method |
|---|---|---|
| Weekly revenue tracker | Weekly Revenue | Apps Script onEdit trigger |
| Lead intake log | New Leads | Zapier New Row trigger |
| Project hours sheet | Hours Logged | Make scenario on schedule |
| Budget vs actual | Budget Variance | Apps Script daily trigger |
| Customer count | Total Customers | Zapier row count |
Method 1: Google Apps Script (Direct)
This is the most direct method. Apps Script runs inside Google Sheets and can call the Dashello API whenever a cell changes or on a schedule.
Go to Dashello Settings → API Keys and generate a new key. Copy the key - it starts with dash_.
Open your Google Sheet. Go to Extensions → Apps Script. Delete any placeholder code and paste the following:
function pushToDashello(metric, value) {
const API_KEY = "dash_your_api_key";
const options = {
method: "post",
headers: { "Authorization": "Bearer " + API_KEY },
contentType: "application/json",
payload: JSON.stringify({ metric, value, source: "google-sheets" }),
};
UrlFetchApp.fetch("https://dashello.co/api/ingest/metric", options);
}
// Trigger on edit
function onEdit(e) {
pushToDashello("Sheet Updated", 1);
}
// Or run on a schedule: open the sheet daily, read a cell
function dailyPush() {
const sheet = SpreadsheetApp.getActiveSheet();
const revenue = sheet.getRange("B2").getValue();
pushToDashello("Weekly Revenue", revenue);
}Click Save. To run on a schedule, click the clock icon (Triggers) and add a new trigger for dailyPush set to run daily. To run on every edit, the onEdit function runs automatically. Click Run once to test and accept permissions.
Method 2: Zapier (No-Code)
Use Zapier's Google Sheets integration with the Webhooks by Zapier action. See our Zapier integration guide for complete setup instructions. In summary: create a Zap with Google Sheets → New Spreadsheet Row as the trigger, then add a Webhooks by Zapier → POST action pointing to https://dashello.co/api/ingest/metric with your API key in the Authorization header.
Method 3: Make (Visual Workflow)
Use Make's Google Sheets module to watch for changes and the HTTP module to push to Dashello. See our Make integration guide for details. Create a scenario with Google Sheets → Watch Rows as the trigger, then add an HTTP → Make a request module configured as a POST to https://dashello.co/api/ingest/metric.
Which method should I use?
| Method | Best For | Skill Level |
|---|---|---|
| Apps Script | Direct control, custom triggers, complex logic | Some coding |
| Zapier | Quick setup, many other apps already connected | No code |
| Make | Visual workflows, branching logic, data transforms | No code |
Troubleshooting
Apps Script: Authorization Required
The first time you run the script, Google will ask you to review permissions. Click "Review Permissions," select your account, and click "Allow."
Data not appearing in dashboard
Check your Inbox in Dashello. If the metric name doesn't match an existing box, data is stored there. Make sure the metric field in your code matches an existing metric name exactly.
Start Tracking Sheets in Dashello
Connect your Google Sheets metrics to Dashello and stop manually copying numbers between tools.
Try For Free