The Partner Revenue Measurement (PRM) program is an AWS initiative that measures service consumption driven by partner services and solutions. Quantifying the AWS consumption that partners generate across customer accounts has long been a challenge; PRM is AWS’s latest attempt to address this by providing automated, data-driven measurement across both partner and customer accounts. For partners, consumption is visible in the Attributed Revenue Dashboard in Partner Central, where consumption can be broken down by partner offering, AWS service, and billing period.
→ What is Partner Revenue Measurement? → Attributed Revenue Dashboard Guide
This article covers the prerequisites for implementation, the available implementation methods, the AWS services it supports, and questions around the program.
PRM Program Prerequisites
Before implementing PRM, the following must be in place.
1. An AWS Partner Central account linked to an AWS account. The linked account becomes the primary account for all APN activities. It is used for APN funding eligibility and the migration to the new Partner Central experience, and it is billed for the annual APN membership fee.
→ Resource Tagging Prerequisites
2. A product listed on AWS Marketplace. A Marketplace listing is required to obtain the product code used in attribution.
→ AWS Marketplace Seller Guide
3. Cost Explorer enabled in the linked AWS account. Cost Explorer requires a manual opt-in; it’s not enabled by default. Data takes up to 24 hours to appear after first activation. In AWS Organizations, member accounts can only access Cost Explorer if the management account has enabled it first — and the management account can also deny access to specific member accounts.
4. A product on AWS Marketplace that uses at least one supported AWS service. See the supported services list below.
PRM Program Implementation
PRM supports three implementation methods that can be used simultaneously in the same deployment.
AWS Marketplace Metering works automatically with zero-touch configuration and applies to AMI and ML products listed on AWS Marketplace.
Resource Tagging involves tagging AWS resources with aws-apn-id = pc:<product-code> and applies to SaaS products, Professional Services engagements, and infrastructure deployed via Terraform or CloudFormation.
User Agent String embeds the product code directly in AWS API/CLI calls and applies to products that make frequent API calls or in scenarios where resource tagging is not available.
Since Marketplace Metering requires no manual setup, the next two sections focus on the methods that do require partner implementation: Resource Tagging and User Agent String.
Resource Tagging
Resource Tagging applies when deploying infrastructure via Terraform or CloudFormation into customer accounts, particularly for long-lived resources such as EC2, RDS, S3, or Bedrock.
- Tag key:
aws-apn-id - Tag value format:
pc:<product-code>(e.g.,pc:5ugbbrmu7ud3u5hsipfzug61p)
The tag can be applied through the AWS provider’s default_tags block in Terraform, which applies it automatically to all resources managed by that provider. Provider-level tags merge with any existing resource-level tags.
provider "aws" {
region = var.aws_region
default_tags {
tags = {
aws-apn-id = "pc:<your-product-code>"
}
}
}
Constraints:
- Only one
aws-apn-idtag is allowed per resource - Each tag counts against the AWS limit of 50 tags per resource
- Attribution stops when the tag is removed or the resource is terminated
User Agent String
The User Agent String method applies when resources cannot be tagged. This method may be used when customer tag policies prevent resource tagging, on resource types that do not support tagging, or when another partner already holds the aws-apn-id tag on the resource.
Required format: APN_1.1/pc_<YOUR-PRODUCT-CODE>$ (the $ is a required end delimiter)
import boto3
from botocore.config import Config
config = Config(
user_agent_extra="APN_1.1/<APN-Product-Code>$"
)
client = boto3.client("s3", config=config)
→ User Agent String — AWS PRM Docs
Difference between methods:
- Resource Tagging attributes revenue continuously while the tag is present on the resource
- User Agent String attributes revenue based on API calls. Importantly, this method requires at least one call per resource per month for attribution to continue.
Supported Services
The following are some of the AWS services included in PRM attribution (full list):
- Amazon Bedrock — Amazon and Open Source models only
- Amazon Bedrock AgentCore — Runtime, Browser, Code Interpreter, Gateway, Identity, Memory
- AWS Lambda — Full support
- Amazon S3 — Storage costs only; excludes Requests
- Amazon RDS — All engines supported
- Amazon DynamoDB — Full support
- Amazon ECS / EKS — ECS includes Fargate; EKS excludes Fargate
- Amazon SageMaker AI — Excludes training plans
- Amazon OpenSearch — Excludes Serverless and Ingestion
- Amazon Redshift — Provisioned and Serverless
- AWS Glue — Full support
- Amazon API Gateway — Full support
- AWS Step Functions — Full support
Open Questions and Future Vision
PRM addresses a long-standing and complex challenge: how to accurately measure AWS consumption driven by partner services and solutions within customers’ environments.
While the program introduces structured methods for attribution and provides partners with visibility they did not previously have, a number of practical questions remain, particularly regarding real-world adoption scenarios.
- How does PRM handle cases where clients do not approve tagging applications on their accounts due to compliance or governance policies?
- On collaborative engagements where the client owns the underlying resources, what options does a partner have for applying or maintaining attribution tags on those services?
- If a client removes partner tags after the engagement ends, how is past attribution preserved or recovered?
- When a new partner takes over an existing engagement and overwrites the previous partner’s
aws-apn-idtag, how does PRM handle the transition of attribution between partners? - PRM resource tagging is not currently supported in AWS GovCloud; what attribution options are available for partners operating in that environment?
Our hope is that PRM evolves into a more comprehensive solution — one that closes the gaps partners encounter in real-world engagements, from compliance-driven tagging restrictions to multi-partner handoffs and GovCloud support. As adoption grows, refining these edge cases will be critical to ensuring PRM becomes a reliable, trusted foundation for recognizing partner contributions at scale, and a true reflection of the value partners deliver to customers.
Author:
Noor Sabahi | GenAI Practice Lead, New Math Data | AWS Ambassador
#AWSPRM #AWSPartnerRevenuMeasurement #AWSPartner
References
- What is Partner Revenue Measurement? — AWS PRM Onboarding Guide
- Prerequisites — AWS PRM Onboarding Guide
- Included Services — AWS PRM Onboarding Guide
- Full list of included AWS services
- User Agent String — AWS PRM Onboarding Guide
- Attributed Revenue Guide — AWS Partner Central
- Enabling Cost Explorer — AWS Cost Management
- AWS Marketplace Seller Guide