Search for a command to run...
A workshop system that used Google Drive started failing under scale. I rebuilt it to be resilient, latency-free, and quota-safe, all without buying a Google Workspace subscription.
Our LMS offered live workshops with timed tests, where each student received a unique Google Doc to complete their answers. In smaller sessions, this setup worked fine but during our first large-scale event with over 500 students, the system buckled. Because each file was created and shared in real-time using the Google Drive API, we quickly hit rate limits. Students faced long delays just trying to start their test, and in some cases, the file never arrived at all. For learners expecting a seamless, high-stakes exam experience, this wasn't just frustrating it was disruptive and trust-breaking.
From a business perspective, the stakes were just as high. We couldn't upgrade to Google Workspace due to cost constraints, and we didn't have time for a full redesign before the next workshop. But we knew we had to act fast. If the platform couldn't deliver a smooth, instant test-start experience, we risked losing student confidence, damaging our brand, and creating negative word-of-mouth. We needed a solution that was cost-efficient, reliable at scale, and invisible to the user, something that just worked when students clicked “Start Test.”
Google API Rate Limits — Document creation and permission updates are capped per account.
Hard Real-Time Constraints — Docs needed to be ready instantly as students joined.
No Budget for Upgrades — Google Workspace pricing was off the table.
High Drop-off Risk — First impressions mattered, delay in test start = lost trust.
To solve the scalability issue without paying for higher Google API quotas, I re-architected the file distribution system to rely on pre-processing and deferred assignment. The first major change was moving document creation out of the critical path. Since students were required to register in advance for the workshop, I used that window to generate all the necessary test files ahead of time. During off-peak hours, a script created individual Google Sheets for each anticipated participant and stored their IDs in a reserved_files database table. However, these files weren't immediately assigned to students. This decision ensured that unused files from no-shows could be recycled.
Instead of creating and sharing documents in real time, the system waited until a student actually began their workshop. At that point, it would atomically assign an available pre-created file and hand over the link. To avoid hitting permission-related API limits altogether, I set each file's access level to "Anyone with the link can edit." This approach allowed us to completely bypass per-user permission updates while still maintaining accountability through Google Docs built-in edit history.
Finally, to ensure the system remained stable during future workshops, I added monitoring logic that tracked the number of remaining unassigned files and triggered alerts if the pool ran low. With this architecture, we were able to deliver a seamless, real-time experience for every participant without exceeding quotas or needing a paid subscription.
✅ Zero delays in file delivery during subsequent 500+ student workshops
📉 80% drop in Google API calls, keeping usage well under quota
🚫 No production incidents or retries mid-workshop
💬 Improved NPS score by +12%, thanks to a smoother student experience
💰 No additional SaaS spend, no Google API upgrades needed
🔁 Reusable system now in place for all large-format events
API quotas are more dangerous at scale than you expect, plan for burst traffic.
Pre-allocating work and decoupling heavy-lift operations from real-time user events can save entire systems.
Sometimes removing features (like per-user permissions) is the best tradeoff, especially when there's a fallback like version history.
Performance under pressure often comes down to how well you prepare before it starts.