1. Home
  2. Nebula Documentation
  3. Reports
  4. Azure Monthly Costs Report

Azure Monthly Costs Report

How to Download the Azure Monthly Costs Report

1. Log in to the UI and then click on the Reporting button:

2. Click on the Monthly Costs Report button:

3. The Monthly Costs Report dialog will be displayed:

4. You can generate the report for a single month, or for a range of months. To generate the report for a single month, click on the month for which you would like to generate the report. Be sure to select the month that corresponds with the correct year. The dialog will indicate the month for which the report will be generated. Then, click the Download button:

To generate a report for a range of months, click on the month you want to be the beginning of the report, then select the end-month. Verify that the report will be run for the correct month(s) and year(s). The dialog will indicate the month range. Then, click the Download button:

Maximum Month Range
Please note that you can generate a report for a maximum range of 18 months.

5. If you tick the “Run report for all Authorized Provisioning Entities” box, the information box indicating that the report will be run for the Provisioning Entity you’re currently logged in to will disappear, and the report will be downloaded for all Provisioning Entities your user has access to.

6. The UI will display a success message and the report will be downloaded as a .csv file.

Understanding the Azure Monthly Costs Report

This report includes Azure usage data under the Enterprise Agreement for all Organizations of a given Provisioning Entity for a given Calendar Month. For each Organization, the report aggregates all usage for the entire month from all Subscriptions and provides separate rows for each Azure Meter showing the aggregate Quantity and “Pay-As-You-Go” pricing for that aggregate usage.

  • If there is a mix of normal and “Dev/Test” Subscriptions under an Organization, those are aggregated separately since they use different pricing offers
  • If the Azure Meter uses Tiered Pricing and the Organization’s usage exceeds the initial tier, a separate row is provided for each usage identifying the calculation.
  • Since the report aggregates usage of all Subscriptions over the entire month, the details as to how the usage was incurred do not appear in this report. For a more granular view of a given Organization’s usage, users should refer to the Detailed Usage Report.

Here is an explanation of each column of the report

  • provisioningEntityId: Unique GUID that identifies the Provisioning Entity that the report covers
  • englishProvisioningEntityName: English Language name for the Provisioning Entity
  • japaneseProvisioningEntityName: Japanese Name for the Provisioning Entity (if applicable)
  • dedicatedTenant (boolean) – If TRUE, the Provisioning Entity does not use Nebula for Subscription provisioning. There is no Organization-level detail and usage from all Subscriptions is aggregated into a single total. All Organization-level metadata columns will be blank.
  • organizationId – Unique GUID for each Organization underneath the Provisioning Entity.
  • englishOrganizationName – English name of the Organization.
  • japaneseOrganizationName  Japanese Name for the Organization (if populated).
  • internalOrganization (boolean) –When TRUE, identifies the Organization is marked as an “internal use” organization.
  • ringfenced (optional – boolean) – Included only if it’s NOT a Dedicated Tenant
  • ringfencedId (optional – string) – This column will only appear if the Organization is ringfenced. The ringfence ID(s) of the organization will be displayed here.
    • Note that if an organization has multiple ringfence IDs, they will be separated by a comma
  • poc (boolean) – When TRUE, identifies that the Organization has been marked as a “Proof of Concept” organization.
  • organizationAzureRetailDiscount – Identifies what Retail Discount the Provisioning Entity is providing for this organization. Must be between 0 and 10% except when poc=TRUE, then it can be up to 100%. Does not apply to Internal Organizations.
    • Note: The discount shown is the discount that was in effect at the end of the usage month.
  • calendarYearcalendarMonth Identifies the month and year that the report covers – each report covers one month.
  • meterType – Identifies whether the Meter Id represents: Reserved Instance (RI), Savings Plan commitment (SPLAN), Marketplace purchase (MARKETPLACE), Spot Instance (SPOT), or Pay-As-You-Go (PAYG) usage. Note that discounts apply only to PAYG usage.
  • azureMeterId – Identifies the Microsoft Azure unique GUID for that Meter Id. Populated for all meterType(s) except MARKETPLACE.
  • azureProduct – High-level name of the Product associated with the azureMeterId. Populated for all meterType(s) except MARKETPLACE.
  • azureMeterName – Specific name for the azureMeterId in the row. Populated for all rows except MARKETPLACE.
  • azureUnitOfMeasure – How usage is measured in Azure – for example, 1GB, 100GB, etc… Populated only for PAYG rows.
  • azureEaPartNumber – Microsoft’s EA part number for the azureMeterId. Populated only for PAYG rows
  • marketplacePublisherName – Publisher of the Marketplace offering associated with the usage row. Populated only for MARKETPLACE rows
  • marketplacePlanName – Marketplace offering associated with the usage row. Populated only for MARKETPLACE rows
  • meterMargin – Identifies if downstream billing systems should allow discounts to the calculatedPaygPrice for the row. This value is TRUE only for PAYG rows.
  • paygTierMin – Populated only for PAYG rows with multiple pricing tiers. Identifies which pricing tier is related to the row – the value represents the lowest quantity of the given tier.
  • aggregatedAzureQuantity – Aggregated value of all Quantities reported by Azure for all rows for the azureMeterId.
    Note: This value has different meanings within Azure depending on the meterType
  • paygUnitPrice  – Populated only for PAYG rows. Identifies the PAYG rate being applied to the quantity to identify the price for the row
  • calculatedPaygPrice Represents the total price for the usage row under “Pay-As-You-Go” offer.
    This is either a passthrough of aggregated Azure cost (for RI/MARKETPLACE/SPOT) or Nebula’s calculation based on the aggregated quantity and the appropriate Azure PAYG price list rate for the tier (either Pay-As-You-Go or Pay-As-You-Go Dev/Test). In some cases (such as the cancellation of a RI that results in a refund), this can be a negative number
  • devTestOffer If FALSE, the usage in this row was aggregated from the Organization’s “Pay-As-You-Go” offer subscriptions. if TRUE, the row represents “Pay-As-You-Go Dev/Test” usage.
  • billingCurrency – Currency associated with the pricing. Always populated with one of USD, AUD, JPY
  • errorCode – Populated in rare situation where the current month’s retail price list did not include pricing for the Azure meter. The possible codes returned include:
    1. USED_PRICE_LIST_yyyy-mm: If the current month’s price list does not include pricing for the Azure meter but we have pricing for a previous month, the most recent previous month’s price is used so long as that pricing does not exceed the underlying SCE cost. The yyyy-mm indicates the month from which the pricing was obtained.
    2. USED_SCE_COST: If the current month’s price list does not include pricing for the Azure meter and the most recent pricing would exceed the underlying SCE cost, the system uses the native Microsoft SCE costs.
    3. USED_CONSUMPTION_PRICE_LIST_yyyy-mm indicates the usage was associated with a Dev/Test subscription and current month’s price list did not include a Dev/Test price but a non-Dev/Test price was found in a previous month’s price list. The yyyy-mm indicates the month from which the pricing was obtained.
    4. NO_PRICE_LIST = Neither current month or any previous month’s price list includes the meter. In this case, the system uses the native Microsoft SCE costs.
    5. NO_ORGANIZATION_EA_<id of Ea> = Usage in a Multi-Tenant EA that could not be mapped to a Nebula Organization. The system reports the usage but it is not assigned to any Organization or Provisioning Entity.

The following fields are populated only for users with a view of all Provisioning Entities:

  • sceNumber  – SCE number of the usage gathered for the subscription
  • sceCostDiscounted  – Identifies whether the SCE cost includes discounting
  • sceCost – Aggregated SCE cost for the part number
  • expectedManualDiscount – If sceCostDiscounted = FALSE, and the row represents an eligible component (meterMargin = TRUE), this field identifies the system’s calculation of expected discounting.
    • NOTE: This data is available only for June 2023 and later
  • calculatedSceCost 
    • If sceCostDiscounted = TRUE, calculatedSceCost = sceCost for all rows
    • If sceCostDiscounted = FALSE, calculatedSceCost = sceCost + expectedManualDiscount
      • errorCode = NO_PRICE_LIST is treated in this manner (i.e. we calculate it WILL be discounted)
      • Data prior to June 2023 includes a manual discount calculation not shown in the previous field.

Note: In order to preserve Japanese characters in a CSV file, you must take additional steps. Please see:
https://smallbusiness.chron.com/microsoft-excel-wont-show-japanese-characters-77317.html

Updated on December 4, 2023

Related Articles