releases.shpreview

Error tracking rate-limit config normalized; sendBeacon no longer drops events silently

posthog-js@1.400.0

July 14, 2026PostHog JSView original ↗
1 enhancement1 fixThis release1 enhancementImprovements to existing features1 fixBug fixesAI-tallied from the release notes
From the original release noteView original ↗

1.400.0

Minor Changes

  • #4101 dc2aa5b Thanks @posthog! - Normalize the error tracking rate-limiter config to first-class options. The browser SDK now reads exceptionRateLimiterRefillRate / exceptionRateLimiterBucketSize on error_tracking, with the previous double-underscore __exceptionRateLimiterRefillRate / __exceptionRateLimiterBucketSize options deprecated but still honoured as a fallback. The option shape (ExceptionRateLimiterConfig) and default-resolution logic (resolveExceptionRateLimiterConfig) now live in @posthog/core and are shared between the browser and Node SDKs. (2026-07-14)

Patch Changes

  • #4140 1eabd30 Thanks @turnipdabeets! - Handle sendBeacon quota rejections instead of silently dropping events. A beacon rejected by the browser (over the page's shared ~64KiB in-flight keepalive quota) is now split in half and re-sent recursively so the batch delivers as far as the quota allows; a rejected payload that cannot be split falls back to a non-keepalive fetch and logs a warning. Previously the boolean return of sendBeacon was ignored and an over-quota unload batch was lost with no signal. (2026-07-14)
  • Updated dependencies [dc2aa5b]:
    • @posthog/core@1.41.0
    • @posthog/types@1.394.0

Fetched July 14, 2026