📧

【GAS】メールの大量送信でエラー、1日のメール送信上限の確認方法、有償のGoogle Workspaceを利用しても送信上限が増えない理由

2023/07/18に公開

Google Apps Script(GAS)を使って自動でメールを送信することができます。複数人に一斉送信、営業メール、自動返信などで活用できます。ただし、1日でメール送信できる数には上限があります。

1日で送信できるメール数の上限

無償のGoogleアカウント(個人)を利用している場合は1日で100通まで送信できます。
有償のGoogleアカウント(Google Workspace)は、1,500通です。

【GAS実行制限】Google サービスの割り当て  |  Apps Script  |  Google Developers
CC、BCCもカウントに含まれます。従って1通のメールで複数宛に送信している場合は、送り先のメールアドレス数だけ消費されます。また、1スクリプト(project)毎ではなく、Googleアカウント単位での上限になります。

送信できる残りのメール数の確認方法

getRemainingDailyQuota()で送信できる残りのメール数を確認することができます。

function myFunction() {
  const emailQuotaRemaining = MailApp.getRemainingDailyQuota();
  console.log("残りのメール送信数: " + emailQuotaRemaining);
  // 残りのメール送信数: 100
}

上限を超えてエラーになったらいつ制限は解除されるのか?

1日のメール送信数の上限を超えるとエラーになります。この時、getRemainingDailyQuota()を取得すると0が返されます。

Exception: 1 日にサービス email を実行した回数が多すぎます。
Exception: Service invoked too many times for one day: email.

リファレンスで制限は「最初のリクエストから24時間後にリセットされます」と記載があります。
ただ試したところ実際は太平洋時間を基準に算出され、日本時間で16〜17時頃にリセットされるようです。

Google Workspaceなのに上限が100通になる原因は?

前述の通り、有償のGoogleアカウント(Google Workspace)の場合、1日で送信できるメール数の上限は1,500通です。ただし、注意が必要です。リファレンスには次の注意事項が明記されています。

注:
試用アカウントには、追加の制限が適用されます。料金なしの試用アカウントから有料定期購入に切り替えると、次の条件が両方とも満たされている場合、アカウントの制限が自動的に引き上げられます。

  • ドメインで累計 100 米ドル(または現地通貨の相当額)以上が支払われている。
  • お支払い基準額に達してから 60 日以上経過した場合。

Google Workspaceの利用開始から 「100ドル以上の支払い達成から60日以上の経過」 が上限引き上げの条件になっています。従って、利用開始直後の試用期間中は上限100通が適用されます。
100ドルの方は早期払い (手動払い)することですぐに達成が可能ですが、60日以上の経過が必須なので、Google Workspaceの利用を開始しても2ヶ月程は上限が100通のままなので注意しましょう。

Discussion