Revenue
Track billed revenue, marketplace fees, and payouts from your GCP Marketplace orders in Suger.
Overview
Google handles billing on its side — it charges your customers, deducts its marketplace fee, and disburses your earnings. Suger does not process GCP payments. Instead, Suger ingests the billing reports Google delivers to your Cloud Storage report bucket and normalizes them into unified revenue records, so GCP revenue sits alongside your AWS, Azure, and Snowflake revenue in one place.
Suger syncs several GCP reports:
| Report | What it contains |
|---|---|
| Charges and Usage | The primary billing source — the amount charged to the customer and the amount due to you (the seller). |
| Disbursements / Detailed Disbursements | The confirmed payout amounts Google sent you, including the marketplace fee. This is the only source of a GCP record’s disbursed amount. |
| Insights | Customer and company metadata used to enrich buyer records. |
Suger resolves each charge to the matching Suger buyer, product, and entitlement where possible.
Where to find GCP revenue
GCP is a first-class channel in Suger’s revenue surfaces:
- Open Revenue → Revenue Records.
- Set the Channel filter to GCP.
Two tabs are available:
- Joined Records — one normalized row per order, with billed amount, marketplace fee, collectable amount, and disbursement.
- Raw Records — the source charge-and-usage rows exactly as Google reported them.
You can also see GCP revenue for a single buyer on its detail page, for a single entitlement on its detail view, or for a product. See the Revenue Records documentation for the full page reference.
What each amount means
Suger maps the raw GCP report data into the normalized record as follows:
| Revenue record field | GCP source | Meaning |
|---|---|---|
| Billed (Invoice amount) | Charges | What Google billed the customer. |
| Collectable | Due to partner/seller | What you receive after Google’s marketplace fee. |
| Partner fee | Charges − collectable (net of prepay credits) | Google’s marketplace fee. |
| Disburse amount | Detailed Disbursements payout | Money Google actually paid out to you. Zero until the Detailed Disbursements report arrives. |
| Expected payout (due date) | Derived from the charge month | The 21st of the month after the charge month, in UTC. Suger computes this itself; Google does not report it. |
| Disburse date | — | Not populated for GCP. Google does not report the date a payout actually left its side, so this field stays empty on GCP records. |
Why a GCP record has no disburse date
Google reports the charge month and, later, the payout amount — but never the date on which it paid you. A GCP revenue record is therefore created with no disburse date and a disbursed amount of zero, and Suger fills in the money afterwards from the Detailed Disbursements report.
To keep the record on a timeline anyway, Suger derives an expected payout date — the 21st of the month following the charge month, in UTC — and stores it as the record’s payment due date. That expected date, not a disburse date, is what drives the record’s payment status:
Read the states as follows:
| Payment status | When a GCP record is in it |
|---|---|
| PENDING | The expected payout date has not arrived yet. |
| PAID | The expected payout date has passed and the Detailed Disbursements report has apportioned a non-zero amount to the record. A refund or clawback month carries a negative amount, and that also settles the line — otherwise a credit would sit in aging as overdue forever. |
| OVERDUE | The expected payout date has passed and the confirmed amount is still zero. |
Two places in the product show this explicitly: on Invoices, a GCP invoice’s subline reads Expected payout <date> where other channels read Due or Overdue; and in reports, a GCP row with no disburse date is flagged Is Estimated.
Sync
Revenue sync runs automatically once your GCP Marketplace integration is connected. Suger reads new report files as Google delivers them and updates the corresponding revenue records.
- The first sync performs a historical backfill; subsequent syncs re-scan a trailing window so late-arriving charges and disbursements are picked up.
- Until the Detailed Disbursements report arrives, a record’s disbursed amount stays zero and it sits at its expected payout date. Once the report lands, Suger apportions the real per-line payout across the records for that entitlement and charge month, by each record’s share of the collectable amount, so the parts add up to the payout exactly. No disburse date is ever filled in — see Why a GCP record has no disburse date.
- Because the Detailed Disbursements report is the only source of a confirmed payout, a sync that cannot read it is aborted rather than completed. Completing it would zero out every previously confirmed amount and flip those records to overdue.
FAQ
Why is my collectable amount lower than the billed amount?
The collectable amount is the charged amount minus Google’s marketplace fee. Suger derives the fee from the difference between what Google billed the customer and what is due to you (after prepay credits), so it reflects the exact rate Google applied.
Why don’t GCP records show tax?
Google’s marketplace reports do not break out a separate tax line, so Suger leaves the tax field empty for GCP records.
When will I see the final disbursement?
The confirmed payout amount appears once Google delivers the Detailed Disbursements report and Suger’s next sync ingests it. Before that, the record’s disbursed amount is zero and it carries only its expected payout date — the 21st of the month after the charge month.
Why is the disburse date empty on my GCP records?
Because Google never reports it. Google tells you the charge month and, later, the payout amount, but not the day the money moved. Suger leaves the disburse date empty rather than substituting the report’s generation date, and tracks the record against its expected payout date instead. See Why a GCP record has no disburse date.
Spotted something wrong or out of date on this page? Tell us and we'll correct it.