- 2026.07.28 The Awkward Problems in Calendar-Based Attendance Tracking
- 2026.07.27 Why AI Sales Emails Get No Replies
- 2026.07.26 How One Shared Sheet Link Leaks Company Data
- 2026.07.25 Make.com Subscription vs Free Apps Script: Which Is Actually Cheaper?
- 2026.07.24 Why Internal Dashboards Are Ignored After Six Months
- 2026.07.23 Bad Form Auto-Replies Damage Customer Trust
- 2026.07.22 The Moment Free Automation Hits a Paid Plan
- 2026.07.21 Why Cutting Prompts to Save AI Cost Can Make Things Worse
- 2026.07.20 Spreadsheet Inventory Numbers Do Not Match for a Reason
- 2026.07.19 Why Vibe-Coded Apps Script Turns Into Trash After Three Months
- 2026.07.18 Why Google Calendar Booking Systems Double-Book
- 2026.07.17 Why a Stack of SaaS Tools Does Not Raise Revenue
- 2026.07.14 Why Google Forms Data Turns Messy in Days
- 2026.07.13 ChatGPT API Costs Quietly Leak Money If You Do Not Count Them
- 2026.07.12 The Permission Trap in Spreadsheet Approval Systems
- 2026.07.11 Why Three No-Code Tools Got Replaced by One Apps Script
- 2026.07.10 Where Free Google Apps Script Automation Starts Leaking Money You are here
- 2026.06.20 Cut Your Monthly SaaS Bill: Rent vs Own Your Automation
- 2026.06.19 How Much Does Adding AI Cost? The One Exception to Zero-Cost Automation
- 2026.06.19 Automating Your Work with Google Apps Script — The Complete Guide
- 2026.06.16 How a Multi-User Inspection App Is Different
- 2026.06.10 Inventory in Google Sheets: How Far Automation Goes
- 2026.06.08 The Truth About Zero Upkeep: Why It's Free, and the Exceptions
- 2026.06.06 Outsource vs Build vs SaaS: Compared by Cost
Where Free Google Apps Script Automation Starts Leaking Money
Where free Apps Script automation turns into real operating cost: triggers, external APIs, maintenance, and ownership.
Conclusion first: Apps Script is free at base but leaks money or fails when trigger cadence, 6-minute cap, UrlFetch retries, external API billing, logging volume, email quotas, and ownership transfer accumulate.
Trigger Cadence Design
Minute-level triggers collide with the 6-minute limit. Cap at once per hour and use LockService to prevent concurrent runs. See lockservice-concurrency.
Six-Minute Limit and Chunking
Split work into 5-minute segments per six-minute-limit. Persist restart checkpoints on failure.
UrlFetch and Retry Strategy
Apply retry-backoff: 3 attempts with exponential backoff.
function monitoredFetch(url, options) {
const start = new Date();
let err = null;
try {
return UrlFetchApp.fetch(url, options);
} catch(e) {
err = e;
throw e;
} finally {
logToSheet({duration: new Date()-start, error: err});
}
}
Monitoring Sheet Schema
| Column | Type | Purpose |
|---|---|---|
| timestamp | Date | Execution time |
| function | String | Function name |
| durationMs | Number | Runtime |
| error | String | Error message |
External API Billing Points
Record API key usage on every call when integrating ai-cost-and-keys.
Wrap every external call in a monitoring wrapper to automate cost tracking.
Failure Mode Checklist
- No partial rollback on 6-minute timeout
- Unhandled 429 on UrlFetch
- Workspace policy drift undetected
When Not to Use This Approach
Migrate to Cloud Run once spreadsheet-inventory-limits are exceeded or service-invoked-too-many-times hits 10+ times daily.
Final review criteria
The useful question is not how many features the automation has. It is whether the workflow can be understood, recovered, and safely rerun after something goes wrong.
- Raw input is separated from the human-facing working view.
- Each run records success, failure, processed count, and error message.
- Replaying the same input does not create duplicate results.
- Permission changes, quota errors, and external API failures are visible later.
For low-risk internal tasks, that may be enough. For customer replies, booking confirmation, inventory updates, payments, or legal records, the threshold is higher: compare Apps Script against a dedicated SaaS or a small server-backed system before relying on it.
Frequently asked questions
- 2026.07.28 The Awkward Problems in Calendar-Based Attendance Tracking
- 2026.07.27 Why AI Sales Emails Get No Replies
- 2026.07.26 How One Shared Sheet Link Leaks Company Data
- 2026.07.25 Make.com Subscription vs Free Apps Script: Which Is Actually Cheaper?
- 2026.07.24 Why Internal Dashboards Are Ignored After Six Months
- 2026.07.23 Bad Form Auto-Replies Damage Customer Trust
- 2026.07.22 The Moment Free Automation Hits a Paid Plan
- 2026.07.21 Why Cutting Prompts to Save AI Cost Can Make Things Worse
- 2026.07.20 Spreadsheet Inventory Numbers Do Not Match for a Reason
- 2026.07.19 Why Vibe-Coded Apps Script Turns Into Trash After Three Months
- 2026.07.18 Why Google Calendar Booking Systems Double-Book
- 2026.07.17 Why a Stack of SaaS Tools Does Not Raise Revenue
- 2026.07.14 Why Google Forms Data Turns Messy in Days
- 2026.07.13 ChatGPT API Costs Quietly Leak Money If You Do Not Count Them
- 2026.07.12 The Permission Trap in Spreadsheet Approval Systems
- 2026.07.11 Why Three No-Code Tools Got Replaced by One Apps Script
- 2026.07.10 Where Free Google Apps Script Automation Starts Leaking Money You are here
- 2026.06.20 Cut Your Monthly SaaS Bill: Rent vs Own Your Automation
- 2026.06.19 How Much Does Adding AI Cost? The One Exception to Zero-Cost Automation
- 2026.06.19 Automating Your Work with Google Apps Script — The Complete Guide
- 2026.06.16 How a Multi-User Inspection App Is Different
- 2026.06.10 Inventory in Google Sheets: How Far Automation Goes
- 2026.06.08 The Truth About Zero Upkeep: Why It's Free, and the Exceptions
- 2026.06.06 Outsource vs Build vs SaaS: Compared by Cost