Reports for your Google Cloud Marketplace products

This page explains how to set up and use reports for your Google Cloud Marketplace products.

Depending on the type of products that you offer on Google Cloud Marketplace, you can receive the following reports:

  • Usage and disbursement reports: Contain details of your software's usage, and the amount to be paid to you.
  • Customer insights report: Contains information about who your customers are, and how they are using your software, such as the number of Virtual machines (VMs) that they deployed your products on.
  • Lead generation report (for VM products): Contains contact information for customers who have consented to share this information with you.
  • SKU migration report: If we migrate your product SKUs to a different Cloud Billing service or structure, this report tells you about the migration so you can adapt your report ingestion.

Your reports are delivered to a Google Drive folder, a Cloud Storage bucket, or both. For steps to set up your report destinations, see Setting up reports.

To learn about how your customers are billed and to set up payments, see Receiving payments from Google.

Setting up reports

To receive your Google Cloud Marketplace reports, set up a Drive folder, a Cloud Storage bucket, or both. You must be an owner for the destination you choose. For example, if you use a Drive folder, your Google Cloud account must have the Can organize, add & edit permission for the folder.

Your reports can be stored in a shared Drive location, a Cloud Storage bucket, or both. When you set up your destination, your Google Workspace or Cloud Storage administrator must ensure that the destinations can be shared with the google.com and system.gserviceaccount.com domains.

When you add your report destination, the following accounts are added as editors or storage object administrators, as applicable:

  • The cloud-marketplace-stats@system.gserviceaccount.com service account, which uploads reports to the bucket.
  • The gcp-marketplace-business-operations@google.com Google group, to debug and troubleshoot issues that you might have with reports.

If you're setting up a Cloud Storage bucket, we recommend that you use access control lists (ACLs) for the bucket. We also recommend that you remove any retention policies that you might have on the bucket, because the retention policy might prevent reports from being updated until the retention period has passed.

If you use Uniform Bucket Level Access, note that the following organization policies might interfere with access:

To remove these organization policies for your bucket, for the folder or project that holds your bucket, request that your organization policy administrator set the policy to the Google default handling.

After you set up a location to store the reports, you must set up how they are delivered. To set up delivery, use the following steps based on whether you use Producer Portal or Partner Portal to manage your product:

Producer Portal

  1. In Producer Portal, open the Partner Reports page. The direct link to the page is:

    https://console.cloud.google.com/producer-portal/reports?project=YOUR_PUBLIC_PROJECT_ID
    

    Your public project ID is the ID of the project that hosts the components of your product. You create this project when you sign up to become a partner.

  2. To add a report destination, click Add destination.

  3. Under Destination location, select whether you want to send reports to a Drive folder or a Cloud Storage bucket.

  4. Click Browse and select a folder or bucket, as applicable.

  5. Select the report(s) to save in that destination. You can send each report to as many destinations as you need.

  6. If you want additional levels of detail in usage reports, under Usage report options, select one or more of these options:

    • Separate customer usage by location: Splits your usage and disbursement report by the customers' locations.
    • Separate customer usage by billing account: Splits your usage and disbursement report by the customers' Cloud Billing accounts.

    For information on what is included in the report, see Usage and disbursement reports.

  7. If you want to set up more destinations, repeat these steps.

  8. Optionally, add one or more Cloud Billing accounts to use for testing. To learn about product testing, visit Testing your published Google Cloud Marketplace products.

  9. To save your changes, click Save. You must agree to give the Google Cloud Marketplace accounts access to your report destinations.

Partner Portal

  1. In Partner Portal, open the Partner Reports page. The direct link to the page is:

    https://console.cloud.google.com/partner/reports?project=YOUR_PUBLIC_PROJECT_ID
    

    Your public project ID is the ID of the project that hosts the components of your solution. You create this project when you sign up to become a partner.

  2. To add a report destination, click Add destination.

  3. Under Destination location, select whether you want to send reports to a Drive folder or a Cloud Storage bucket.

  4. Click Browse and select a folder or bucket, as applicable.

  5. Select the report(s) to save in that destination. You can send each report to as many destinations as you need.

  6. If you want additional levels of detail in usage reports, select one or more of these options:

    • Separate customer usage by location: Splits your usage and disbursement report by the customers' locations.
    • Separate customer usage by billing account: Splits your usage and disbursement report by the customers' Cloud Billing accounts.

    For information on what is included in the report, see Usage and disbursement reports.

  7. If you want to set up more destinations, repeat these steps.

  8. To save your changes, click Save. You must agree to give the Google Cloud Marketplace accounts access to your report destinations.

Usage and disbursement reports

By the tenth business day of every month, two reports are generated in the destination that you set up, with the details of usage and revenue for the previous month. These two reports have names that begin with the first day of the month: YYYYMMDD, for example 20210401 means the report is for the usage that happened in April 2021.

Charges and usage report

The YYYYMMDD Charges and Usage report contains the following content. For any questions about the report, contact your Partner Engineer.

  • SKU: The description of the Google Cloud Marketplace product.

  • Google Entity: The Google corporation that received the payment from customers. The payment to you originates from this corporation.

  • Resource: The resource on which the product ran. The resource shown depends on your pricing model.

  • Usage: The quantity of the resource used by deployments of the product.

  • Units: The unit in which the Usage column is measured, such as hours, core-hours, or gibibyte-hours, depending on your pricing model.

  • Currency: The currency in which the following three columns are measured.

  • Charges: The customer's costs for using your product. Starting with April 2021's report, if you are paid in a currency other than USD, this field uses your payment currency.

  • Trial Use: The cost that was covered by product trial credits. Starting with April 2021's report, if you are paid in a currency other than USD, this field uses your payment currency.

  • Due Partner: Payment accrued for you, calculated as (Charges - Trial Use) * revenue share.

  • Payment Type: The means by which you will receive the disbursement: If it is old, you receive payments from Google US or a regional Google entity to your US-based bank account. If it is new, you receive a single payment to your local bank account.

  • Withheld: If a Google Cloud customer's billing account is placed on due to lack of payment, Google withholds disbursements until the account is back in good standing.

    This column tells you how much we would have paid you if we had collected it from the customer.

    When the billing account is back in good standing, we release the withheld funds in the next payment to you. If it never returns to good standing, we abandon the withheld funds.

  • Released: If Google had withheld funds, this column shows the total of the funds that are now released to you because the customer's billing account is back in good standing.

  • Abandoned: If Google had withheld funds, this column shows the total of the funds abandoned because we have terminated the billing account.

  • Probation Start: The first day that Google started withholding funds, in YYYY-MM-DD format. If we are releasing or abandoning funds, this may be in an earlier month. If the account is still on probation, this is the first day in the current month where we withheld funds (which may not be the very first day on which we withheld funds).

  • Probation End: The last day that Google withheld funds, in YYYY-MM-DD format. The day after this, the account either returned to good standing, or we closed it. If this is blank, then the account is still on probation.

  • Refund Start: The first day that Google refunded a customer's usage, in YYYY-MM-DD format.

  • Refund End: The last day that Google refunded a customer's usage, in YYYY-MM-DD format.

  • Refund Balance Deducted This Month: The amount of payout Google subtracted during the month related to a customer refund.

  • Refund Balance Outstanding: If the offset related to a customer's refund is greater than the month's payout, the remaining offset due to your future payout.

  • Refund Reason: The reason why a customer received the refund.

By default, the report is broken down by the SKU, Google Entity, and Resource. When you set up your reports, you can choose these additional breakdowns:

  • By account: This adds Account Id and Insights Account Id columns to the report, which show a billing ID for the customer. You can use this ID to track metrics like churn or trial conversions. The Account Id isn't the customer's Google Cloud billing ID, but it is specific to the customer's billing account. There are two forms of obscured account ID in the report because, for historical reasons, the two reports use different algorithms to obscure the actual account ID. Use the Insights Account ID to match the disbursement to the information about the customer in the Customer insights report.

  • By location: This adds a Location column to the report, which holds the country code for the customer's location. If the customer is in the US or Canada, the column includes the country and state code.

If you need to link a payout in the Charges and Usage report to the customer name, you will need to

  1. Enable by account reporting.
  2. Configure receiving Customer insights reports
  3. Use the Insights Account Id column to find the row in the Customer insights reports with the matching external_account_id column.

Disbursements report

The second report is the YYYYMMDD Disbursements report. This report details the money that is transferred from Google to you for the month. It contains the following content:

  • Entity: The name of the Google corporate entity that is issuing the payment, or the special entities Abandoned Payout or Released Payout:

    Released Payout
    indicates the money that Google had withheld, because the customer was delinquent, which it has now received, and is paying to you.
    Abandoned Payout
    indicates the money Google had withheld because the customer was delinquent that will never be paid because Google has determined it is uncollectible.
  • Currency: The currency in which the money is being paid.

  • Amount: The total of the disbursement, before any adjustments.

  • Customer Refund: Any adjustment due to having refunded money to customers for your products.

  • Total: The final amount after adjustments.

  • Notes: The reason for the adjustment.

  • Payment Type: The means by which you receive the disbursement. If the value is old, you receive one or more payments from Google US or a regional Google entity to your US-based bank account. If the value is new, you receive a single payment to your local bank account.

Customer insights report

You also get a daily and monthly Customer insights report, which includes information about who your customers are, and how they are using your software. The daily reports are generated on a two-day delay, based on Pacific Time (PT). For example, the report for June 1st is generated on June 3rd. The monthly report is generated on the 2nd calendar day of the subsequent month.

When a customer sets up their Cloud Billing Account, they choose whether it is a business account or a personal account. We exclude identifying information from the Customer insights report for those accounts that the customer identified as a personal account. You will see n/a in those identifying columns for those accounts.

The sales report contains the following information, starting from July 13, 2018:

Field Description
date The date for the usage reports.
company The customer's company name. If the customer is using a personal account, the company name is excluded from the report.
domain The email domain for the organization's billing administrator. If there are multiple administrators associated with the billing account, the domain in the report is the domain used by most of the administrators. If the customer is using a personal account, the domain is excluded from the report.
external_account_id The Insights account ID, generated for the billing account associated with the customer's project.
account_id The billing account associated with the customer.
country The customer's country.
state_or_province The customer's state or province, if applicable.
postal_code The customer's postal code, if applicable. If the customer is using a personal account, the postal code is excluded from the report.
sku_id The SKU that the customer was charged for. Depending on how a product is configured, a single deployment might have multiple SKU IDs. For example, one SKU might cover the cost of using CPUs in the deployment, and another SKU ID might cover the cost of using RAM.
sku_description The description of the SKU. For example, if a customer deployed a WordPress product that charged by the number of CPU cores, the SKU description is similar to "Licensing Fee for Click to Deploy Wordpress (CPU cost)".
usage The quantity of resources used by the customer.
unit The metric that usage is measured as, such as hour or gibibyte hour.
currency The currency that you are paid in.
charges The charges that the customer was billed for during the period.
due_vendor The amount that you receive for the usage.
trial_use Trial credits (if applicable) that the customer consumed.
num_vms The number of VMs that the customer has deployed the product on.
num_cpus The number of vCPU cores in the customer's deployment. If the number is a fraction, it indicates that the customer chose a shared vCPU.
ram_mb The size of the RAM in the customer's deployment.
num_gpus The number of GPUs in the customer's deployment.
gpu_types A space-separated list of the GPU types in the customer's deployment. For example, the value "NVIDIA_TESLA_P4 none NVIDIA_TESLA_P100" indicates that at least one VM used an NVIDIA® Tesla® P4, at least one used a P100 GPU, and at least one VM had no GPU. For a list of GPUs available on Compute Engine, see GPUs on Compute Engine.
earliest The earliest date (UTC) on which the customer created a VM that was live during the reporting period.
latest The latest date (UTC) on which the customer created a VM that was live during the reporting period.
machine_spec_sum A space-separated list of new and total counts per [machine type](/compute/docs/machine-types). For example, the value "F1_MICRO:0/1 G1_SMALL:2/3" indicates that 1 f1-micro VM and 3 g1-small VMs were used during the current period, of which 0 f1-micro VMs are new and 2 g1-small VMs are new.
quote_id If you've generated revenue from a private offer, the quote ID associated with the offer's product and billing account.
quote_creator If you've generated revenue from a private offer, the email address of the offer creator.
internal_note If you've generated revenue from a private offer, an optional internal note for the offer. You can use internal notes to tag offers for additional processing, such as tracking the revenue and/or usage data they generate. You specify the internal note when you create the offer.
payment_type The means by which you will receive the disbursement: If it is old, you receive payments from Google US or a regional Google entity to your US-based bank account. If it is new, you receive a single payment to your local bank account.
withheld If a Google Cloud customer's billing account is placed on due to lack of payment, Google withholds disbursements until the account is back in good standing. This column tells you how much we would have paid you if we had collected it from the customer. When the billing account is back in good standing, we release the withheld funds in the next payment to you. If it never returns to good standing, we abandon the withheld funds.
released If Google had withheld funds, this column shows the total of the funds that are now released to you because the customer's billing account is back in good standing.
abandoned If Google had withheld funds, this column shows total of the funds are abandoned because we have terminated the billing account.
probation_start The first day that Google started withholding funds, in YYYY-MM-DD format. If we are releasing or abandoning funds, this may be in an earlier month. If the account is still on probation, this is the first day in the current month where we withheld funds, which may not be the very first day on which we started to withhold funds.
probation_end The last day that Google withheld funds, in YYYY-MM-DD format. The day after this, the account either returned to good standing, or we closed it. If this is blank, then the account is still on probation.
start_date The first day that the entitlement is active, in YYYY-MM-DD format. The date is determined by the associated subscription or private offer for the entitlement. If the entitlement was created before 2021-01-10, the value is NULL.
end_date The last day that the entitlement is active, in YYYY-MM-DD format. The date is determined by the associated subscription or private offer for the entitlement. If the entitlement was created before 2021-01-10, the value is NULL.

Additional information for prepay offers

If you've created private offers that use a prepay payment schedule, you might see the following additional information:

Field Description
payment_mode The type of payment schedule for the offer. This can have the value PREPAY, PREPAY_INSTALLMENTS, or POSTPAY.
private_offer_acceptance_date The date that the private offer was accepted by the customer.
private_offer_total_contract_value The total amount that the customer pays across all installments of the private offer.
order_start_date The date that the private offer pricing takes effect.
order_end_date The date that the private offer pricing is no longer in effect.

Lead generation report

For VM products, you can get the Lead generation report that includes customers' information, such as email addresses and phone numbers, uploaded daily.

If you want to collect this information, contact your Partner Engineer with the following information:

  • For each product, the fields that you want in your report.

  • The URL for the privacy policy that governs how you use the fields that you collect. We recommend being explicit about what you use the information for, so that customers are comfortable sharing their information.

The fields and privacy policy are used to create a consent form. When customers start deploying a VM product for the first time, they see the information that you want to collect and your privacy policy. After reviewing the information, customers can grant or deny their consent to share their information with you.

The first row of the report holds the number of customers who opted out of sharing their information, and the start and end times that are covered by the report. All customer answers in the report are from between the two times. The times are based on the UTC timezone, and are in the ISO format YYYY-MM-DDTHH:MM:SS+00:00. For example, midnight UTC on March 14, 2019 is shown as 2019-03-14T00:00:00+00:00.

For customers who opted in, the report contains the following information:

Field Description
Name The customer's name.
Email The customer's email address.
Company The customer's company name. If the customer isn't associated with a company, the value is `_none_`.
Country Code The two-letter country code for the customer's country. For example, the two-letter code for France is FR.
Address The customer's address.
Phone The customer's phone number.

SKU migration report

Occasionally, we might shift how the SKUs related to your products are structured, or the product in Cloud Billing where they appear. When this happens, we create a file sku-migration-report.csv in the same location as your Customer Insights reports. Each SKU is located in a service, which has a 3-part hexadecimal ID of the form 0123-4567-89AB. In addition, each SKU has its own 3-part hexadecimal ID that is independent of the service ID, and unique across all services. You see the SKU ID in the sku_id column in the Customer insights report.

The SKU migration report is updated each day. If you have a retention policy on your Cloud Storage bucket, the update is delayed until the retention period has passed. The report contains the following information:

Field Description
source_sku_id The SKU ID of the old SKU.
target_sku_id The SKU ID of the SKU that has replaced the original. If this is blank, then the original SKU has no replacement.
target_service_id The service ID in which the replacement SKU is defined. If this is blank, then the original SKU has no replacement.
seller Your company name.
product The name of the product that the SKU relates to.
source_sku_name A human-readable name of the source SKU (this is not how it appears on the customer invoice).
target_sku_name A human-readable name of the SKU that has replaced the original. If this is blank, then the original SKU has no replacement.