Cost attribution and controls for AI developer and productivity tools
AWS enabled zero-instrumentation per-user cost attribution on Amazon Bedrock, logging individual developer inference calls directly into CUR 2.0 reports.
By Dillip Chowdary • Nov 14, 2026 • Source: AWS Machine Learning Blog
In this post
Amazon Web Services introduced zero-instrumentation cost attribution and native usage controls for artificial intelligence developer and productivity tools operating on Amazon Bedrock. The built-in architecture records the AWS Identity and Access Management caller identity for every inference call made across supported endpoints, publishing the caller ARN and session metadata directly into billing datasets without requiring modifications to client API code, as detailed in AWS Machine Learning Blog's report. All data remains inside the customer AWS security boundary while flowing into AWS Cost and Usage Reports 2.0 and AWS Cost Explorer.
This technical breakdown examines the setup process, architecture boundaries, and governance controls for enterprise FinOps and AI engineering platform teams deploying coding and assistant tools. The mechanism applies identically across developer utilities such as Claude Code, Claude Desktop, OpenAI Codex, ChatGPT Work, and OpenCode. Teams can trace individual seat expenses, map organizational tags for cost centers, query aggregated billing metrics through Amazon Athena, and establish explicit per-seat access parameters across disparate foundation models.
01Identity propagation and endpoint telemetry
Amazon Bedrock isolates attribution at its inference entry points, specifically the bedrock-runtime and bedrock-mantle endpoints, positioning tracking beneath client-side tool implementations. When an authenticated operator executes an inference operation, Bedrock records the complete IAM ARN along with the federated session name.
This identifier automatically enters the line_item_iam_principal field within AWS Cost and Usage Reports 2.0. In addition, organizational dimensions including team identifiers and cost center codes propagate as session tags carrying the iamPrincipal/ prefix directly into AWS Cost Explorer.
Standard shared-role deployments historically aggregated total consumption under a uniform assumed-role principal string, blinding billing administrators to individual consumption. Under the federated pattern using AWS IAM Identity Center, each sign-in establishes an individual session principal tied to the authenticated user corporate identity. Organizations can simultaneously layer Application Inference Profiles on bedrock-runtime or assign Projects and Workspaces on bedrock-mantle to tag project workloads, while reserving per-request metadata tagging for log-level prompt tracking.
02Identity Center configuration and permission sets
Integrating corporate identity providers such as Okta, Microsoft Entra ID, or Ping Identity with AWS IAM Identity Center forms the backbone of per-seat attribution. Administrators configure SAML 2.0 or SCIM provisioning within Identity Center settings, ensuring automated user synchronization and passing attributes like team and department. Navigating to attributes for access control enables the mapping of directory attributes to session tags, which then tag every subsequent bedrock-runtime and bedrock-mantle API call under aws:PrincipalTag keys.
Platform teams assign centralized permission sets to synchronized directory groups, eliminating static, long-lived local access keys on developer machines while feeding CloudTrail audit trails. These policy definitions isolate access between runtime model invocation and mantle project resources:
| Attribution Dimension | Legacy Shared Role Pattern | Identity Center Federated Pattern |
|---|---|---|
| Principal Identifier | assumed-role/role-name/fixed-session | assumed-role/role-name/user-signin-name |
| Reporting Column | line_item_iam_principal aggregated | line_item_iam_principal per developer |
| Organizational Tags | Missing or static account tags | Dynamic iamPrincipal/ prefixed tags |
| Credential Lifecycle | Long-lived static keys or shared tokens | Temporary federated tokens (8-hour refresh) |
| Billing Granularity | Combined bucket spend | Hourly or daily principal aggregation |

03Workstation configuration and authentication profile
Client workstations require standard AWS CLI v2 installation configured to reference the IAM Identity Center single sign-on parameters. Developers add the identity profile to their local configuration without requiring browser automation plugins, credential wrapper scripts, or tool-specific telemetry injectors. Once defined, a single command signs the operator into the organization portal and retrieves short-lived cached credentials that validly authenticate local CLI clients, text editor extensions, and assistant tools against Bedrock:
Advertisement
Tech Pulse Daily
Get tomorrow's pulse first
Join engineers who read Tech Pulse before stand-up. Free, weekday mornings.
aws sso login --profile bedrockDevelopers switch running models within interactive agent environments by passing target Bedrock-supported model aliases directly in the application session interface:
/model claude-fable-5-1Engineers launching developer tools from the command terminal pass the target model flag at initialization, pinning the operational context directly to the approved Bedrock model resource:
claude --model fableTo configure default model execution across tools, developers declare the target model identifier within the active shell session profile:
export ANTHROPIC_MODEL=fable04Session duration limits and reporting boundaries
AWS Cost and Usage Reports 2.0 aggregate billing records by principal and usage type across hourly or daily export intervals rather than detailing real-time, per-prompt token events. Platform teams requiring prompt-level tracking or token consumption analysis must deploy model invocation logging or request metadata tagging alongside billing reports. Furthermore, cost allocation tags must be activated inside the root payer management account before session tags begin populating financial datasets.
Claude Platform on AWS and Claude for Enterprise operate outside direct Bedrock endpoint attribution because their inference traffic traverses Anthropic-managed infrastructure. Claude Platform usage surfaces via Anthropic admin console workspaces, transmitting workspace tags into AWS billing, whereas Claude for Enterprise reports seat metrics directly through Anthropic admin consoles and dedicated Usage and Cost APIs with native spending controls. Local workstation credential tokens default to an eight-hour session lifetime, after which developers must re-authenticate to maintain model access.
05Budget governance and ongoing visibility
Following configuration, organizations analyze aggregated consumption data using Amazon Athena SQL queries targeted at S3-backed CUR 2.0 tables. Financial analysts query specific line_item_iam_principal records combined with team session tags to isolate spending patterns across developer groups and evaluate correlation with departmental milestones. These structured datasets allow teams to construct automated dashboards tracking multi-model spend distributions across individual projects.
The centralized architecture ensures instant policy revocation across all connected developer environments. Modifying the Identity Center permission set immediately removes model access for specific developer cohorts or restricts invocation to cost-effective inference profiles. Because access policies enforce rules at the Bedrock control plane, platform teams retain absolute governance over developer AI tooling without inspecting local client code or interfering with individual workstation configurations.
Cost attribution and controls for AI FAQ
Which AI tools support Amazon Bedrock zero-instrumentation cost attribution?
The attribution mechanism operates at the bedrock-runtime and bedrock-mantle endpoints, supporting tools including Claude Code, Claude Desktop, OpenAI Codex, ChatGPT Work, and OpenCode automatically.
How does user identity appear in AWS Cost and Usage Reports?
When authenticating through AWS IAM Identity Center, the individual sign-in name populates the line_item_iam_principal column, with mapped IdP attributes appearing as session tags with the iamPrincipal/ prefix.
Does CUR 2.0 provide real-time token tracking for every prompt?
No, CUR 2.0 aggregates costs per principal and usage type across hourly or daily intervals, requiring model invocation logs or per-request metadata tagging for prompt-level token auditing.
How does attribution function for Claude Platform on AWS and Claude for Enterprise?
Those solutions route traffic through Anthropic-managed infrastructure, displaying usage inside Anthropic admin consoles and APIs rather than native Bedrock endpoint logging.
Sources
Author
Dillip Chowdary
Writes Tech Bytes coverage of AI, engineering, and the tools that actually ship. Editor of Tech Pulse Daily.
Related on Tech Bytes
Advertisement