Trial profiling usage invisible in Usage History without PAYG
@brendanhsentry is already working on this.
Since Jul 8, 2026.
- Dominant language
- Python
- Stars
- 44.8k
- Forks
- 4.9k
- Avg merge
- 21h 23m
- Merged PRs (30d)
- 607
Description
After a Continuous Profile Hours product trial ends, users cannot see their trial usage in Usage History unless a PAYG budget is configured. Setting PAYG to $1 reveals the data.
Root cause
renderOnDemandUsage in usageHistory.tsx returns null when !history.onDemandMaxSpend:
// static/gsApp/views/subscriptionPage/usageHistory.tsx:143
if (!history.onDemandMaxSpend) {
return null; // hides entire on-demand section
}
DataCategory.PROFILE_DURATION / PROFILE_DURATION_UI are PAYG-only categories (first reserved tier = 0, per isCheckoutCategory in dataCategory.tsx). All profiling usage lands in the on-demand section — which is fully hidden when onDemandMaxSpend is falsy. During a product trial, no paid PAYG budget is configured, so onDemandMaxSpend = 0 and the section never renders.
Workaround
Set any PAYG budget (e.g. $1) to make the on-demand section visible.
Fix direction
Render the on-demand usage section whenever there is actual spend (onDemandSpend > 0) among categories, regardless of whether a budget ceiling was configured. The budget ceiling (onDemandMaxSpend) should not gate visibility of historical usage.
--
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.