Dr. Pranay Jha

VMware • Cloud • AI • Enterprise Architecture

FORMERLY
VMware Insight & Cloud Pathshala
What began over a decade ago as a passion for sharing knowledge has evolved into a unified platform for Enterprise AI, VMware, Cloud Architecture, Research, and Modern Infrastructure.
, ,

Cost, Pricing Cards and Showback in VCF Automation (VCF Automation 9 Series, Part 28)

Where cost actually lives in VCF 9, how rate-based and cost-based pricing cards differ, and how showback and chargeback turn consumption into a defensible bill against an organization or region quota.

VCF Automation 9 Series · Part 28 of 41
TL;DR · Key Takeaways
  • Cost, pricing and billing in VCF 9 live in VCF Operations, not in VCF Automation and not in the old VMware Cloud Director. Automation surfaces the bill; Operations calculates it.
  • Two pricing card types: rate-based (you set the rates) and cost-based (Operations derives price from cost drivers). VMware Cloud on AWS objects only support rate-based.
  • Showback tells a team what it consumed; chargeback turns that into a bill tied to an organization or a region quota.
  • The pricing hierarchy has a trap: a VM under the VCF Automation hierarchy is priced by Automation, and it drops out of its vCenter or cluster policy entirely.
  • Price recalculates on a 24-hour cycle. A new card or a fresh deployment is never billed instantly.

Who this is for: Provider and platform admins who own tenant billing, plus the IT-finance or FinOps people who have to defend a showback number to a business unit.

Prerequisites: A deployed VCF Fleet with VCF Operations and VCF Automation integrated, at least one organization (VM Apps or All Apps), and the context from Part 5 (licensing), Part 8 (projects) and Part 24 (multi-tenancy design).

The first pricing card most admins build is in the wrong product. They open VCF Automation (the service formerly called VMware Aria Automation, and before that vRealize Automation), go looking for a cost tab, and find nothing useful. The pricing engine is in VCF Operations. Automation is where a tenant sees a bill; Operations is where that bill is built. Get that split wrong and you waste a day hunting for a screen that does not exist.

This is also the part of VCF 9 that quietly absorbed an entire product. In older releases, service providers ran pricing, billing and dashboards through VMware Cloud Director. In VCF 9 those jobs move into the VCF Operations plus VCF Automation pair. If you are coming from a vRA 8.x or VCD background, the muscle memory is wrong, and the new model is worth learning carefully before you promise a tenant a monthly invoice.

Where cost actually lives in VCF 9

VCF Operations is the central hub. It pulls data through Management Packs, one per source: a VCF Automation management pack, a vCenter management pack, an NSX management pack. Each has a one-to-one relationship with its component. Operations meters the consumption, applies your pricing policy, and produces cost, showback and chargeback figures. VCF Automation then exposes the resulting bills to the right tenant roles. The integration is one-to-one: one VCF Automation instance binds to exactly one VCF Operations instance, and Operations collects from Automation by default once the Fleet is up.

How cost data flows in VCF 9 Management Packs feed VCF Operations; Automation surfaces the result vCenter MP VCF Automation MP NSX MP VCF Operationsmeter + price +showback / chargeback VCF Automationportal: Bills One VCF Automation instance binds to exactly one VCF Operations instance.
Cost is calculated in VCF Operations and surfaced in the VCF Automation portal.

The practical consequence: if you want a tenant to see a bill, you do not configure anything in Assembler or Service Broker. You configure pricing and generate bills in VCF Operations, and the tenant reads them in the VCF Automation Organization portal. Two products, one workflow.

Pricing cards: rate-based vs cost-based

A pricing card is how you put a number on a resource. VCF Operations gives you two kinds, and the choice is not cosmetic. It decides whether your price tracks reality or tracks a published rate.

Cost-based: derive price from what it costs you

A cost-based card builds the price up from cost drivers: server hardware, storage, licenses, applications, maintenance, labor, network, facilities, and any extra costs you add. Operations works out the cost to run a VM, then you layer price on top through upcharges, profit and service charges. Cost is your expenditure; price is what you charge. This is the right model when finance wants the bill anchored to real spend and you can keep the cost drivers current. One caveat that bites people: cost-based policy is ignored for VMware Cloud on AWS objects, and the calculated price comes back as zero.

Rate-based: publish a rate and charge it

A rate-based card ignores your internal cost and charges a rate you define per element: so much per vCPU, per GB of memory, per GB of storage, plus any base charge. This is the model providers reach for, because a tenant wants a predictable price list, not a window into your hardware amortization. Rate-based is also the only model that works for VMware Cloud on AWS resources.

DimensionRate-based cardCost-based card
Price sourceRates you define per elementCost drivers plus upcharge/profit
Best forProvider price lists, predictable tenant billsInternal IT anchored to real spend
VMware Cloud on AWSSupportedNot applied (price reports zero)
Maintenance burdenUpdate the rate listKeep every cost driver current
AssignmentvCenter or ClustervCenter or Cluster

In practice: I tell providers to start rate-based. Cost-based is honest but it is only as good as the cost drivers behind it, and those go stale the moment someone refreshes hardware or renegotiates a license. A rate card you can defend on a slide beats a cost card nobody trusts.

The pricing hierarchy and the trap inside it

Cards are assigned to vCenters or Clusters. Price is calculated per VM, aggregated, and rolled up to the vCenter. When two policies apply, a default at the vCenter and another at a cluster, the cluster policy wins for everything under that cluster, and the cluster cost then rolls up to the vCenter. So far, ordinary precedence.

Here is the part people miss. When a virtual machine sits under the VCF Automation hierarchy and the vCenter hierarchy, the VCF Automation hierarchy takes precedence. The VM is removed from the vCenter resources and counted under VCF Automation resources instead. If your vCenter pricing card and your Automation pricing differ, the Automation side is what the tenant pays, and the VM vanishes from the vCenter cost rollup. Reconcile those two numbers before a tenant does it for you.

Pricing precedence Cluster beats vCenter; Automation hierarchy beats both vCenter default policy Cluster policy (wins) Roll-up: VM → cluster → vCenter VM under VCF AutomationPriced by the Automation hierarchy.Removed from vCenter resources,counted under Automation resources. The trap: reconcile vCenter and Automation pricing.
A VM managed by VCF Automation leaves the vCenter cost rollup entirely.

Showback vs chargeback

These two words get used interchangeably and they should not be. Showback is visibility: it lets you view, analyze and compare cost per user, per VM, per project, per organization, with no money changing hands. Chargeback is the bill: it allocates the cost of cloud resources to the tenants or business units that consumed them, by actual usage, and produces an invoice. Showback is how you build trust in the numbers. Chargeback is what you do once people trust them.

Showback to chargeback Same data, two outcomes ShowbackView and compare costby VM, project, orgNo invoice issuedBuilds trust ChargebackBill the org orregion quotaInvoice issuedRecovers cost same metering,add pricing model
Showback and chargeback run on the same VCF Operations metering.

VCF 9.1 extends both to VMware Kubernetes Service. You get showback, chargeback and real-time pricing estimates for VKS nodes, not just classic VM pricing, which closes a real gap for tenants running the All Apps organization model. See Part 26 on the All Apps organization for where those VKS nodes come from.

A rate card, worked end to end

Below is a readable representation of the fields you set when you build a rate-based card in VCF Operations. It is not an API payload; it is the shape of the decisions, so you can see what assignment and roll-up mean before you click through the wizard.

# Rate-based pricing card (representation of the fields set in
# VCF Operations > Configure > Cost Settings > Pricing Cards)
name: gold-vsphere-rate
type: rate-based
assigned-to:
  - vcenter: vcenter-prod-01
  - cluster: cl-gold-01        # cluster policy wins over vCenter policy
charge-period: month
rate-factors:
  cpu:     { unit: vCPU, rate: 9.00 }
  memory:  { unit: GB,   rate: 4.00 }
  storage:
    - { tier: gold,   unit: GB, rate: 0.12 }
    - { tier: silver, unit: GB, rate: 0.06 }
  base-charge: { unit: VM, rate: 15.00 }   # management upcharge
# Price recalculates on the 24-hour VCF Operations cost cycle.
Worked example

Tenant payments-prod runs 20 VMs, each averaging 4 vCPU, 16 GB RAM and 120 GB of gold storage, on the gold-vsphere-rate card above.

Per VM per month: 4 × 9 = 36 (CPU) + 16 × 4 = 64 (memory) + 120 × 0.12 = 14.40 (storage) + 15 (base) = 129.40. Across 20 VMs that is 2,588 per month for the project.

Showback hands that 2,588 to the team as a number to question. Chargeback turns it into a bill tied to the organization or its region quota. If five of those VMs later move under the VCF Automation hierarchy, they leave the vCenter rollup and are priced by Automation instead, so the vCenter-side total drops even though nothing was deleted. That is the reconciliation line item nobody plans for.

Generating a tenant bill

Once pricing is assigned, the billing workflow is short and lives across both products. The provider acts in VCF Operations; the tenant reads in the VCF Automation portal.

Billing workflow Provider in Operations, tenant in Automation 1Assign pricingcard 2Ops: Capacity >Cost > Bills 3One-time orrecurring bill 4Tenant: Administer> Bills
The four steps from assigned pricing to a bill a tenant can read.

In VCF Operations, go to Capacity > Cost > Bills. Generate a one-time bill or schedule a recurring one, and tie it to either the Organization or a Region Quota. The tenant then logs into the VCF Automation Organization portal with Organization Admin or Organization Auditor rights and opens Administer > Bills. One thing to set expectations on early: ordinary Organization Users do not have access to billing at all. Only the admin and auditor roles see bills, so decide who in the tenant owns that visibility before they ask why they cannot find it.

What breaks, and what to validate first

The failures here are rarely dramatic. They are quiet wrong numbers, which is worse, because a tenant finds them after you have invoiced.

The 24-hour lag. Price recalculates every 24 hours, and a new card is priced in the next cycle. If you build a card and screenshot a zero an hour later, that is expected, not a bug. Validate pricing the day after, not the minute after.

VMware Cloud on AWS plus cost-based equals zero. Assign a cost-based card to VMC objects and the price reports zero silently. For anything touching VMC, use rate-based. Check this before you promise a hybrid tenant a bill.

The hierarchy swallow. VMs under VCF Automation drop out of vCenter cost rollups. If your vCenter dashboard total suddenly looks light, the workloads probably did not leave; they moved under Automation pricing. Reconcile the two views as a standing check.

One-to-one binding. One VCF Automation instance pairs with one VCF Operations instance. If you run multiple Automation instances expecting a single billing pane, that assumption is wrong. Plan the topology around it. The brownfield case is the migration off VMware Cloud Director, where pricing, billing and dashboards that lived in VCD now live in this pair. Budget time to rebuild rate cards rather than expecting an import.

Disclaimer: Generating recurring bills and migrating pricing cards to pricing policies change what tenants are charged. Test on a non-production organization, confirm a full 24-hour recalculation cycle, and reconcile against the prior billing source before you switch a live tenant over.

For the operations-side context behind all of this, the VCF 9 Operations capacity and cost runbook covers the Operations plane itself, and Part 24 on multi-tenancy design sets up the organization and region-quota boundaries that bills attach to.


What I’d Do

Start rate-based, not cost-based. Build one defensible rate card per service tier, assign at the cluster level so precedence is explicit, and run a full month in showback before you ever issue a chargeback bill. Showback first is not caution for its own sake; it is how you find the hierarchy-swallow and the 24-hour lag while they are embarrassing instead of expensive. Cost-based has a place once your cost drivers are trustworthy and finance demands spend-anchored numbers, but that is a second move, not a first one. The one thing I would not do is promise a tenant an invoice date before you have watched two clean recalculation cycles. If you are standing up billing this quarter, build the rate card today and check the number tomorrow.

VCF Automation 9 Series · Part 28 of 41
« Previous: Part 27  |  VCF Automation Guide  |  Next: Part 29 »

References

About The Author


Discover more from Dr. Pranay Jha

Subscribe to get the latest posts sent to your email.

Leave a Reply

Your email address will not be published. Required fields are marked *

Architect’s Toolkit

About the Author

Dr. Pranay Jha is a Cloud and AI Consultant with 18+ years of experience in hybrid cloud, virtualization, and enterprise infrastructure transformation. He specializes in VMware technologies, multi-cloud strategy, and Generative AI solutions. He holds a PhD in Computer Applications with research focused on Cloud and AI, has published multiple research papers, and has been a VMware vExpert since 2016 and a VMUG Community Leader.

VCF Automation 9 Series

Discover more from Dr. Pranay Jha

Subscribe now to keep reading and get access to the full archive.

Continue reading