My ImportJSON functions return #GOOGLE_QUOTA_EXCEEDED

This is usually because you have reached the Google daily quota of external requests you can send in one day (by using the appsScript UrlFetch service).

Free Google Workspace accounts are given 20,000 requests per day, while paid accounts are given 100,000 requests.

This is not exactly related to the number of ImportJSON functions you use:
If you have many ImportJSON functions, the spreadsheet cache is not big enough so it temporarily keeps the data on our server.
If you edit the spreadsheet, Google Sheets triggers recalculations pretty often and the functions use the UrlFetch service to get the cached data from our servers.

When will the counter be reset

It’s a daily quota. Unfortunately, Google doesn’t give more details on what time it will reset the quota.

How can I avoid this error?

  • If you don’t use many ImportJSON functions, the issue is rather due to another script. You may try to disable other add-ons.
  • Try to reduce the number of functions in your spreadsheet. =IMPORTJSON() allows you to fetch a range of URLs in one function.
  • If you use many functions in one spreadsheet, try to limit your activity in the spreadsheet so Google Sheets does not trigger recalculations so often.
  • We’ve noticed that GOOGLEFINANCE() triggers very frequent recalculations of the whole spreadsheet. Using GOOGLEFINANCE() with many ImportJSON functions is a frequent cause of #GOOGLE_QUOTA_EXCEEDED

You can find the official documentation on Google quotas here