Skip to content

Tinybird integration continuously polls api_active_visitors (causing 429 errors) even when Analytics is disabled #28264

Description

@codebarista

Issue Summary

Our self-hosted Ghost instance is currently set to Private and is still being set up (zero actual traffic). Despite this, the Tinybird integration is generating well over 1000 queries per day, quickly exhausting our trial/free tier limits and resulting in continuous 429 Too Many Requests error emails.

Looking at the Tinybird logs, Ghost is constantly polling the api_active_visitors endpoint (multiple times per minute), alongside occasional calls to api_kpis. The core issue is that this background polling continues even if Analytics are completely disabled in the Ghost settings.

Image

tinybird-logs.png (Screenshot showing the continuous stream of requests to api_active_visitors and the resulting 429 rate limit errors).

Steps to Reproduce

  1. Connect a self-hosted Ghost instance to a Tinybird workspace.
  2. Set the Ghost site to Private mode (no frontend traffic).
  3. Disable Analytics entirely in the Ghost Admin settings.
  4. Monitor the Tinybird logs.

Expected Behavior

  • When Analytics are disabled in the Ghost settings, the backend should completely stop making API calls (polling) to Tinybird for visitor stats or KPIs.
  • A private site with zero traffic should not exhaust API rate limits through aggressive background polling for "active visitors" that do not exist.

Actual Behavior
Ghost continuously sends GET requests to the api_active_visitors resource and POST requests to api_kpis, completely ignoring the fact that Analytics are disabled. This runs up the API usage and leads to a constant stream of 429 errors once the daily limit is reached.

Ghost Version

6.42

Node.js Version

22

How did you install Ghost?

Hostinger with official Ghost Docker image

Database type

MySQL 8

Browser & OS version

No response

Relevant log / error output

Code of Conduct

  • I agree to be friendly and polite to people in this repository

Metadata

Metadata

Assignees

No one assigned

    Labels

    affects:adminAnything relating to Ghost Adminbug[triage] something behaving unexpectedlyhelp wanted[triage] Ideal issues for contributors to help with

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions