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.
It’s a daily quota. Unfortunately, Google doesn’t give more details on what time it will reset the quota.
- 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. You can also put a range of selectors if you need to fetch several elements from the target pages.
- The UrlFetch limit goes up to 100,000/day with Google Workspace paid accounts.
- 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