嗯... 最近很多人在問這個 Google Apps Script 的收費問題。說真的,這問題... 有點複雜,但又沒那麼複雜。大部分的人,應該說絕大多數人,其實是用不到付費的。但... 就是這個「但」最麻煩。
重點一句話
簡單講,只要你只是自己用、做點小自動化,基本上 Apps Script 就是免費的。 真的要付錢,通常是你把它當公司級的服務在用,或是串了一些 Google Cloud 的進階功能,那時候才需要考慮。
這東西到底怎麼運作的?為什麼會跟付費扯上關係?
好,我試著講得慢一點... 你看,事情是這樣的。
你只要有一個普通的 Google 帳號,就是那個結尾是 @gmail.com 的帳號,你就可以直接在 Google Drive 裡面... 新增一個 Apps Script 專案,開始寫程式了。 完全免費,不用申請什麼東西。
這就像... 你買了一間房子,屋子裡本來就有水電管線,你可以用,但有一定的流量限制。這個限制,Google 叫做「配額」 (Quotas)。 每天 Google 會給你一些免費的量,像是... 你的程式一天總共可以跑多久、可以寄幾封信、可以去抓幾次外部網站的資料等等。
對一般人來說,這個免費的配額... 綽綽有餘了。真的。你寫個小工具,每天早上自動整理報告、寄一封提醒信... 根本用不完那些額度。
那什麼時候會不夠用?嗯... 這就是問題的關鍵了。
當你的需求... 變大了。例如,你不是自己用,而是公司整個部門都要用。或者,你寫的不是小工具,而是一個... 嗯... 接近商業應用的東西,比如高頻率的爬蟲、或是要處理大量數據的系統。
這時候,免費帳號的限制,你可能就會撞到牆。 最常見的幾個限制是:
- 觸發器總執行時間 (Triggers total runtime):用免費帳號,你所有自動執行的程式,加起來一天最多只能跑 90 分鐘。 這對小工具很夠,但如果你程式跑得久、又跑得頻繁,可能就會超時。
- URL 擷取呼叫 (URL Fetch calls):這個就是你去抓外部網站資料的功能。免費帳號一天是 20,000 次。 聽起來很多,但如果你寫個爬蟲,每分鐘跑一次,一天就 1440 次了... 如果你一次抓很多頁,或是你有很多支爬蟲... 其實是有可能用完的。
- 每日郵件收件者 (Email recipients per day):免費帳號一天只能寄信給 100 個收件人。 如果你想用它來做什麼電子報... 那馬上就卡住了。
當你撞到這些牆的時候... Google 就會給你一條路走:升級到 Google Workspace。
Google Workspace... 以前叫 G Suite,就是企業用的那一套 Google 服務。 一旦你從免費的 @gmail.com 帳號,變成付費的 Workspace 帳號 (例如,你的 email 變成 you@yourcompany.com),你的 Apps Script 配額就會... 大幅提升。 舉例來說,觸發器執行時間從 90 分鐘變成 6 小時,URL 抓取從 2 萬次變成 10 萬次。 這對商業應用來說,通常就非常夠用了。
所以... 付錢就是買 Google Workspace 囉?
嗯... 大部分是,但也不完全是。
付錢升級到 Workspace,解決的是「配額」 (Quota) 的問題。但 Apps Script 還有另一種跟錢有關的狀況,那就是... 使用「進階 Google 服務」或是直接跟「Google Cloud Platform (GCP)」串接。
這部分就比較... 專業了。簡單說,Apps Script 本身是一個... 嗯... 輕量級的腳本平台。 但它可以當作一個「橋樑」,去呼叫 Google 其他更強大的雲端服務,像是 BigQuery (做大數據分析的)、Cloud SQL (雲端資料庫)、Secret Manager (管密碼的) 等等。
當你的 Apps Script 程式去用了這些 GCP 上的服務,那費用的計算方式... 就不是看 Apps Script 了,而是看你用的那個 GCP 服務本身怎麼收費。 這就像你家的水管 (Apps Script) 是免費的,但如果你接上自來水公司的付費礦泉水管線 (GCP 服務),那流出來的礦泉水你還是要付錢。
所以,我們來整理一下,到底什麼時候會需要掏錢:
- 你的用量超過免費帳號的配額:最直接的解決方法就是幫你的帳號升級到 Google Workspace 的付費方案。
- 你需要使用 GCP 的進階服務:你的 Apps Script 腳本需要連接到像 BigQuery 或 Cloud SQL 這類需要付費的 GCP 服務。
- 你要把腳本發布成公開的外掛 (Add-on):如果你想把你寫的工具上架到 Google Workspace Marketplace 讓大家下載... 這通常會要求你把專案連結到一個標準的 GCP 專案上,這背後也可能產生一些費用。
免費仔 vs. 付費仔:到底差在哪?
我知道... 講了一堆還是有點模糊。我們直接用表格來看,可能會清楚一點。我用比較... 口語的方式來說明。
| 特性 | 一般 Gmail 帳號 (就是我這種免費仔) | Google Workspace Business 帳號 (中小企業方案) | 串上 Google Cloud 專案 (專業玩家/要賣錢的) |
|---|---|---|---|
| 每日觸發器執行時間 | 90 分鐘。 跑些簡單的報表、提醒,其實... 夠了啦。 | 6 小時。 這就差很多了,可以跑一些比較複雜、比較久的商業邏輯。 | 這就不看這個了。你的程式會被包在 Cloud Functions 或 Cloud Run 裡,費用是看你用了多少 CPU 跟記憶體,跟時間長短比較沒直接關係。 |
| 呼叫外部服務 (UrlFetch) | 一天兩萬次。 感覺很多,但如果你寫了個寫得不太好的爬蟲... 可能一下就爆了。 | 一天十萬次。 老實說... 除非你公司生意真的超好,不然很難用完。 | 沒有固定上限。你開心用多少... 就付多少錢。完全按量計價。 |
| 建立文件/試算表數量 | 一天 250 個。 誰會手動建這麼多... 啊,但如果是用程式自動產報告,就有可能了。 | 一天 1500 個以上 (根據方案不同)。 用來每天自動生成給客戶的報表,就很夠用。 | 這也是看你串的 Google Drive API 或其他服務的計價方式,不是看 Apps Script。 |
| 適合誰 | 我自己寫來玩、做點生活或工作上的自動化小工具。例如每天定時打卡、同步行事曆... 真的,非常夠用。 | 公司內部的流程自動化、定時產生給客戶的報表、串接內部系統... 這種商業用途。 | 你要做成一個「產品」賣給別人、或是你的程式需要跟很複雜的 Google AI、大數據服務對接。 |
一個... 容易被忽略的重點:官方文件跟民間智慧
說到這個,我發現一個有趣的現象。你看 Google 官方的配額文件,它會很清楚地列出 consumer (就是 gmail.com) 跟 Google Workspace 帳戶的差別。但是... Workspace 本身又分很多等級,像 Business Starter, Business Standard, Enterprise... 這些等級的配額有沒有差?官方文件就寫得... 非常模糊。
這時候,你去看一些台灣的開發者社群,像是 iT 邦幫忙的文章 或網路論壇的討論,就會看到一些「經驗談」。很多人會分享說,其實 Workspace Business Starter (最便宜的那個方案) 的 Apps Script 配額,就已經跟貴很多的 Enterprise 等級幾乎一樣了。這點官方文件裡你幾乎找不到,但卻是省錢的關鍵... 算是某種... 嗯... 不成文的規定吧。
所以... 我的建議是,官方文件 要看,它給你一個基本的「法律框架」。但實際要怎麼用、怎麼最划算,還是要多看看社群上大家的實戰經驗分享,兩邊對照著看,才不會被當冤大頭。
所以,Apps Script 不是萬能的
最後... 我覺得要有一個正確的心態。Apps Script 它很方便,但它不是一台... 嗯... 24 小時運作的超級伺服器。
它比較像是一個很聽話的「臨時工」。你叫它做事 (執行腳本),它會在有限的時間內 (單次執行最多 6 分鐘) 做完。 時間到了它就下班,不會一直待命。而且它一天工作的總時數也是有限的 (免費 90 分鐘 / 付費 6 小時)。
所以,你別想用它來架設一個需要 24 小時回應的網站,或是跑那種需要長時間常駐監聽的服務。那種重量級的需求,就真的該把它交給 GCP 上的專業服務,像是 Cloud Run 或 Compute Engine。 Apps Script 的強項在於「黏合」跟「自動化」,把 Google 生態系裡的東西串起來,做一些輕量級的自動化流程。
嗯... 講了這麼多,我自己是覺得啦,對 99% 的使用者來說,Apps Script 就是一個強大又免費的玩具。你只要心裡有底,知道那道「牆」在哪裡,就不用太擔心費用的問題。
不知道... 你在用 Apps Script 的時候,有沒有踩過什麼有趣的雷?或是有沒有什麼省錢的撇步?... 可以在下面留言分享一下,大家交流交流。
