Skip to main content
cronable
Google Sheets integration

Google Sheets automation without a cloud middleman.

A spreadsheet makes a good inbox or ledger for a workflow. Cronable appends a row when something happens elsewhere, reads a range when a report needs numbers, and starts a run the moment someone adds a row, from a machine you own.

Google SheetsSheets · ActionSheet watch · Trigger
All integrations
One workflow, end to end

A Google Sheets workflow on the canvas

Each card is one job. A wire means the next job runs when the one before it succeeds, or when it fails.

jobs/leads
Or type it to the assistant

“When a new row lands in my Leads sheet, score it with Claude and create the contact in HubSpot.”

What you can do

Every Google Sheets step Cronable ships

Actions

Steps a workflow can take in Google Sheets.
  • Append a row

    Add one row to a tab, one cell per line, filled from earlier steps. Choose whether Sheets reads the values as if typed, so dates and formulas parse, or stores them raw.

  • Read a range

    Read any A1 range, such as Sheet1!A1:D50 or a whole-column band. Numbers come back as numbers by default; you can ask for formatted values or formulas instead.

Triggers

What starts a Google Sheets workflow.
  • New row added

    The Sheet watch trigger checks a tab on an interval and starts one run per new row. The run’s output is the row itself, so the next step can act on each signup, order or request.

Popular workflows

Google Sheets workflows worth automating first

01

Lead intake to your CRM

Sheet watch fires on each new row in your leads tab, Claude scores the lead against your criteria, and HubSpot gets a new contact with the score attached.

02

A daily numbers log

A morning job reads a figure from Stripe or your database and appends one dated row, so the sheet becomes a history nobody has to type.

03

Expense rows from email

Receipts emailed to a mailbox go to an AI step that pulls vendor, amount, date and category out of the message text, and the row is appended to the expenses tab. Attachments are not read.

04

Reminders driven by a sheet

Read a range of due dates each morning, let a Code step keep the rows due today, and send each one to Slack or by email.

How you connect

Connecting Google Sheets

Sheets uses a Google service account: no consent screen, no app verification, no review.

  1. 1Create a service account in Google Cloud and download its JSON key once.
  2. 2Store the key as a Google service account credential in Cronable. The whole key is encrypted and masked.
  3. 3Share the spreadsheet with the service account’s email address, the same way you would share it with a colleague.
Why Cronable

Your Google Sheets automation, on your own machine

Runs on your own machine

Install Cronable as a Mac or Windows app, or on a server you own. Your Google Sheets jobs, secrets and run history stay on that machine by default.

Built from one sentence

Describe the workflow in plain English and the built-in assistant builds the jobs, the schedule and the failure handling for you to review on the canvas. On every plan, including Free.

Unlimited runs

Plans count the jobs you define, not how often they fire. A job that touches Google Sheets every hour costs the same as one that runs once a month.

Credentials encrypted locally

Keys and tokens are AES-256-GCM encrypted in a local database, referenced from jobs by name and masked out of logs and run output.

Questions

Google Sheets automation, answered

Can Cronable read and write Google Sheets?

Yes. It reads any range and appends rows to any tab you have shared with its service account, and its Sheet watch trigger starts a workflow when a new row appears.

Do I have to verify an app with Google?

No. Sheets authenticates as a service account, which has no consent screen and needs no Google verification. You create one JSON key, store it in Cronable and share the sheet with the account’s email.

Where is the service account key stored?

Encrypted in the local credential store on the machine running Cronable. The whole key, private key included, is masked out of logs and output, and jobs only ever refer to it by name.

Can a new row trigger a workflow?

Yes. Sheet watch checks the tab you choose (every 30 seconds by default) and starts one run per appended row. Rows already in the sheet when you switch it on are not replayed.

Why does the job fail with a 403?

The spreadsheet has not been shared with the service account yet. Open Share in Google Sheets, add the account’s client_email address, and the next run gets through.

Anything you do twice in Google Sheets is cronable.

If a spreadsheet is where the work piles up, the piling up can run itself.