Google Analytics
DATA · DATA & ANALYTICS
Core, realtime, and funnel reports for the properties that person can see.
Connecting Google Analytics in practice
The Analytics Data API charges tokens rather than requests, and a standard property gets 200,000 core tokens a day and 40,000 an hour — of which a single Cloud project may spend only 14,000 per property per hour, so a second integration on the same property competes for the same budget. Server errors are metered too: ten from your project against one property in an hour is itself an exhausted quota.
Scopes that draw scrutiny
https://www.googleapis.com/auth/analytics.readonlyReads every Analytics property the authorizing user can reach, not the one property the agent was pointed at.https://www.googleapis.com/auth/analytics.editWhat the Admin API requires for any create, patch, delete or archive call, so a configuration agent holding it can archive a property.https://www.googleapis.com/auth/analyticsThe read-and-write scope runReport accepts alongside analytics.readonly, and the wider of the two for the same report.
Rate limits
- Data API core, standard property: 200,000 tokens per day, 40,000 tokens per hour, and 14,000 tokens per project per property per hour.
- Data API core, Analytics 360 property: 2,000,000 tokens per day, 400,000 per hour, and 140,000 per project per property per hour.
- Concurrent core requests: 10 per standard property, 50 per Analytics 360 property.
- Core server errors: 10 per project per property per hour on a standard property, 50 on Analytics 360.
- 120 potentially thresholded requests per property per hour. The Realtime and Funnel categories carry the same figures as Core.
- Admin API: 1,200 requests per minute, 600 per minute per user, 600 writes per minute, 180 writes per minute per user, and 500 user deletions per day per property.
Worth knowing
- Requests that touch userAgeBracket, userGender, brandingInterest, audienceId or audienceName count against the thresholded-request quota and can come back with rows withheld for privacy, so a report succeeds and is still empty.
- Ask for returnPropertyQuota on a Data API request to read the remaining token balance back in the response; there is no separate quota endpoint to poll.
- Because failures are metered, a retry loop on a malformed query burns the server-error quota and locks the agent out of a property it could otherwise read.
- Google notes that quota limits may be throttled for projects that violate the Analytics Terms of Service, so the published figures are a ceiling rather than a guarantee.
Checked against Data API v1 quotas (2026-09-29), Admin API quotas (2026-09-29), properties.runReport authorization scopes (2026-09-29)
What an agent can do
Each action is granted on its own. An agent allowed to read is not thereby allowed to write, and the scope beside each row is what the acting user must have connected for it to run at all.
Often connected alongside
Put Google Analytics behind one governed endpoint.
Same permissions, same audit trail, whatever else you connect next.