bedrock application inference profiles · cost tracking + governance · 2026

Bedrock application inference profiles, explained (2026).

An application inference profile wraps a Bedrock model with your own cost-allocation tags, so you can split Bedrock spend by app, team or cost center. Here is how they differ from system-defined profiles, how to create and call one, where the cost shows up, and how they work with cross-region inference.

what they add
cost-allocation tags
granularity
per app / team / cost center
per-token cost
same as the model
TL;DR
  • An application inference profile is a resource you create that wraps a foundation model (or a system-defined cross-region profile) and carries your own cost-allocation tags. You pass its ARN as the modelId instead of the bare model ID, and the usage is stamped with those tags. That lets you split Bedrock spend by application, team, environment or cost center.
  • System-defined profiles are published by AWS for cross-region routing. Application profiles are ones you create for tagging and governance. An application profile can wrap a system-defined one, so you get routing and tagging from one ARN.
  • There is no extra per-token cost. Activate the tag keys in the Billing console, and the spend then shows up by tag in Cost Explorer and the Cost and Usage Report. That is what makes per-team budgets, showback and chargeback possible.
the concept

IWhat application inference profiles are

They solve a governance problem, not a performance one. A plain Bedrock bill shows what each model cost, not which app or team drove the spend.

When you call a model by its bare model ID, usage is attributed to that model only. If three apps and two teams call the same Claude or Amazon Nova model, their spend lands in one bucket. On a shared account with several GenAI features, that makes the Bedrock line impossible to govern.

An application inference profile is a resource in your account that wraps a model (or another inference profile) and carries tags you define, such as application=support-bot, team=growth, environment=prod or cost-center=4012. You call the profile instead of the bare model. The model, request and response are the same, but every token of usage carries your tags. It changes the accounting, not the result. You can create one per app, per team, per environment or a mix. See the Bedrock inference profiles guide.

Profiles do not make inference faster or cheaper. They make spend attributable: "what did the support bot cost last month?" and "which team drives our Bedrock growth?" become answerable.

two kinds of profile

IIApplication vs system-defined inference profiles

Bedrock uses "inference profile" for two related things. AWS publishes one kind; you create the other.

System-defined inference profiles are published by AWS per model: geographic ones (US, EU, APAC) and, for some models, a global one. Their job is cross-region routing: Bedrock serves the request from a Region in the profile with capacity, which raises throughput and resilience. You reference them; you do not create them. See cross-region inference.

Application inference profiles are ones you create in your account. Their job is cost attribution and governance through your tags. You control their lifecycle.

They compose. An application profile's source can be a single-Region model or a system-defined profile. Point it at a system-defined cross-region profile and one ARN gives you routing and your tags (section VI).

system-defined vs application inference profiles
DimensionSystem-defined profileApplication profile
Who creates itAWSYou, in your account
Main purposeCross-region routingCost attribution via tags
Carries your tagsNoYes
ScopePer model; geographic or globalPer account; as many as you need
Source it wrapsThe model across a geographyA single-Region model or a system-defined profile
You manage its lifecycleNoYes (create, tag, delete)
Per-token costModel's on-demand rateModel's on-demand rate
Check current behavior in the Bedrock documentation; AWS updates profile support by model and Region.
mechanics + creating

IIIHow they work, and how to create one

You name a source, attach tags, and get back an ARN. Calling that ARN is what produces tagged usage.

  • The source: Set at creation as the copyFrom ARN: a foundation model (single-Region tagging) or a system-defined profile (cross-region routing plus tagging).
  • The tags: Cost-allocation key/value pairs such as application, team, environment and cost-center. These label the usage in your cost tools.
  • The ARN: CreateInferenceProfile returns it. Pass it as the modelId in your inference calls.

CreateInferenceProfile is in the Bedrock API and SDKs, the AWS CLI and the console (see creating an application inference profile). Create a few by hand, then move them into infrastructure as code once the tagging scheme settles. Delete profiles with DeleteInferenceProfile when an app is retired. Tags follow standard AWS tagging limits.

One step people miss: tags on the profile make usage carry them, but a tag does not appear in Cost Explorer or the Cost and Usage Report until you activate it in the Billing console (section V).

the three-step setup

(1) Create: call CreateInferenceProfile with a copyFrom source ARN and your tags. (2) Invoke: pass the returned ARN as the modelId in InvokeModel or Converse. (3) Activate: turn on the tag keys in the Billing console. Only after all three is spend split by your tags.

invoke + converse

IVUsing a profile in InvokeModel and Converse

Wherever your code passes a model ID, pass the profile ARN instead. Nothing else changes.

In InvokeModel and Converse, the target is the modelId parameter. Set it to the profile's ARN. The request body, parameters, streaming and response are the same as for the underlying model. It works across InvokeModel, InvokeModelWithResponseStream, Converse and ConverseStream, and is usually a one-line config change.

Make the model identifier a config value per app or environment. The support bot points at the support-bot profile ARN; the analytics job at the analytics ARN. Both can resolve to the same model, but their usage is separated. Grant IAM permission to invoke the profile and the model it wraps. The rule that makes it work: each workload calls its own profile. If everything calls one shared profile or the bare model, you get no split.

where the numbers show up

VSeeing the cost in Cost Explorer and the CUR

Once the tags are active, profile usage shows up split by your tags in Cost Explorer and the Cost and Usage Report.

First, activate the cost-allocation tags on the Cost Allocation Tags page of the Billing console (see the AWS guide to activating tags). A tag shows in cost reports only from activation onward, not back in time. Activate the keys when you roll out the profiles.

In Cost Explorer you can then group Bedrock spend by application, filter to one team, or split by environment. AWS Budgets can alert per tag value, so a team crossing its limit gets a notice instead of a month-end surprise.

In the Cost and Usage Report (CUR), activated tags appear as columns. You can query Bedrock spend by tag in Athena or load it into a FinOps tool to build showback or chargeback reports. Cost Explorer is for exploring; the CUR is for reporting and automation.

governance + HA together

VICombining with cross-region inference

You do not have to choose between tagging and cross-region routing.

Set an application profile's copyFrom source to a system-defined cross-region profile. The application profile then routes requests across that geography's Regions for capacity and stamps usage with your tags. For example, a support bot can run on an application profile that wraps the US cross-region profile for Claude, getting US-wide headroom and a clean application=support-bot line in Cost Explorer.

Wrapping does not change where data is processed: requests stay within the wrapped profile's Regions (one geography for a geographic profile, any supported commercial Region for a global one). If your rules pin data to a single Region, wrap a single-Region model instead. You keep the tags and give up cross-region routing on that path.

the FinOps use case

VIIThe FinOps and chargeback use case

Profiles turn shared Bedrock spend into numbers each team owns.

Showback shows each team what its Bedrock use costs. Chargeback moves that cost into the team's or business unit's budget. Both need spend tagged by team and cost center, with the tags activated. With profiles in place, the single Bedrock line becomes a set of numbers, each with an owner.

Attributable spend allows per-team budgets and alerts. A team that sees its own GenAI bill tends to use the cost levers (right-size models, caching, Batch) that an unaccountable team ignores.

The same tags support governance: knowing which apps use which models, requiring workloads to go through approved profiles, and fitting Bedrock into the tag-based policies you already run elsewhere on AWS.

Scope: profiles give you the attribution layer. They do not reduce the bill by themselves (see the cost-optimization page) or build the reports (that is your FinOps tooling).

who can fund the build

VIIIWho can fund Bedrock FinOps work

Calls through a profile are billed at the model's normal rate, so they draw down AWS credits like any Bedrock usage. Setting up attribution properly is real engineering work.

The work includes a tagging scheme that holds up as the company grows, wiring each workload to its profile, activating and checking the tags, building the showback reports, and adding cross-region routing where needed.

Partner-filed funding: a vetted AWS partner can file POC (proof of concept) funding for a new GenAI workload, or incremental workload (IW) funding if you already run on AWS and are launching new work. For startups this is typically $50K to $150K. Depends on the workload; AWS approves.

AWS Activate: you apply yourself. Activate Founders gives self-funded startups $1,000 to start, up to $5,000. Activate Portfolio gives up to $200,000 with the Org ID from your VC, accelerator or angel group, if it is an Activate Provider. A consulting partner cannot file Activate for you.

CloudRoute matches you with one vetted AWS partner with FinOps experience who can build the attribution and check which funding fits. Startups pay CloudRoute nothing. Partners pay CloudRoute a monthly membership plus 10% of AWS-approved funding.

Who files it
FundingWho files itAmountWhen it fits
Migration Acceleration Program (MAP)Your matched AWS partner$50K to $150K for startups. Depends on the workload; AWS approves.You are not on AWS yet and want to migrate.
Proof of concept (POC) fundingYour matched AWS partner$50K to $150K for startups. Depends on the workload; AWS approves.You want to test something, whether or not you are on AWS today.
Incremental workload (IW) fundingYour matched AWS partner$50K to $150K for startups. Depends on the workload; AWS approves.You are already on AWS and are launching new work: a new AI feature, a new customer or a new contract.
AWS Activate FoundersFounder applies$1,000 to start, up to $5,000Self-funded startups with no investor or accelerator behind them.
AWS Activate PortfolioFounder appliesup to $200,000Startups backed by a VC firm, accelerator or angel investor that is an AWS Activate Provider.
AWS Credits for AI StartupsInvite only (AWS account manager)$200,000 or more, by invitationAI startups ready to scale after Activate Portfolio, invited by AWS.
Facts checked on October 10, 2026. AWS decides every application.
bare model vs application inference profile

Bare model ID vs application inference profile

The inference is identical. What changes is the accounting and what you can do with it.

VariableBare model IDApplication inference profile
Cost attributionOne bucket per modelSplit by your tags
Tagged in Cost ExplorerNoYes, once tags are activated
Columns in the CURNoYes, activated tag columns
Showback and chargebackNoYes
Per-team budgets and alertsNoPer tag value (AWS Budgets)
Cross-region routingOnly via a system-defined profileYes, if it wraps a system-defined profile
Per-token costOn-demand rateSame on-demand rate
Runtime changemodelId = the modelmodelId = the profile ARN
Best forOne workload or a quick testMulti-app, multi-team setups
Profiles add attribution and governance, not speed or a lower rate.
before you scale Bedrock across teams
Find a partner who can build Bedrock cost attribution and check POC or IW funding for the work
Get matched free with a vetted AWS partner who can file it
how a match works

How a match works (example)

  1. You tell us about the work

    You fill in a short form: what you run today, what you want to move, test or build, your stage and your region.

  2. We pick one partner

    We read your answers and pick one vetted AWS consulting partner that fits the work, the stack and the region. We reply within 24 hours; your matched partner reaches out within 5 business days.

  3. The partner checks POC funding

    Your matched partner scopes the test with you. Then it checks whether the test qualifies for POC (proof of concept) funding. A POC can fit whether or not you run on AWS today.

  4. The partner files, AWS decides

    If the work qualifies, the partner files the funding request with AWS. AWS reviews it and decides. The amount depends on the workload.

  5. You pay nothing

    CloudRoute is free for startups. Partners pay CloudRoute a monthly membership plus 10% of AWS-approved funding.

AWS Activate credits are separate, and you apply for them yourself. Use Activate Founders if no investor backs you. Use Activate Portfolio with the Org ID or invite from your VC, accelerator, incubator or angel group if it is an Activate Provider. A consulting partner cannot apply for Activate on your behalf.

faq

Common questions

What is an application inference profile in Amazon Bedrock?
A resource you create in your AWS account that wraps a foundation model (or a system-defined cross-region profile) and carries your cost-allocation tags, such as application, team or cost-center. You call its ARN instead of the bare model ID, and usage is stamped with those tags. It changes the accounting, not the model or the result, and adds no per-token cost.
How are application inference profiles different from system-defined inference profiles?
System-defined profiles are published by AWS per model (geographic, and for some models global) for cross-region routing. Application profiles are ones you create for cost attribution and governance through your tags. An application profile can wrap a system-defined one, so one ARN gives you both routing and your tags.
How do I create an application inference profile?
Call CreateInferenceProfile (API, SDK, CLI or console) with a name, a copyFrom source ARN (a model or a system-defined profile) and your tags. Bedrock returns the profile ARN, which you pass as the modelId. Delete it with DeleteInferenceProfile when the workload is retired.
How do I use an application inference profile in InvokeModel or Converse?
Set modelId to the profile ARN. Everything else (body, parameters, streaming, response) stays the same, across InvokeModel, InvokeModelWithResponseStream, Converse and ConverseStream. Grant IAM permission to invoke the profile and the model it wraps, and give each workload its own profile.
Where do I see the per-application cost?
In Cost Explorer and the Cost and Usage Report, after you activate the tag keys on the Cost Allocation Tags page of the Billing console. Activation applies from that point forward. Then you can group Bedrock spend by tag in Cost Explorer, or query the tag columns in the CUR with Athena.
Can I combine application inference profiles with cross-region inference?
Yes. Make the application profile's copyFrom source a system-defined cross-region profile. You get cross-region routing and your tags from one ARN. Processing stays within the wrapped profile's Regions. If you need a single Region, wrap a single-Region model instead.
What is the chargeback use case for application inference profiles?
Tag usage by team and cost center, activate the tags, and finance can report or charge Bedrock spend per team from Cost Explorer or the CUR. That enables per-team budgets and makes each team accountable for its GenAI spend. Profiles give you attribution; reports and savings come from your FinOps tools and cost levers.
Can AWS funding cover Bedrock usage through application inference profiles?
Usage through a profile is ordinary Bedrock spend, so credits apply to it automatically. A vetted AWS partner can file POC funding for a new GenAI workload, or IW funding for new work if you already run on AWS. For startups this is typically $50K to $150K. Depends on the workload; AWS approves. Activate credits are separate, and you apply for them yourself.

Make Bedrock spend accountable, with a partner who can file the funding

A vetted AWS partner with FinOps experience can build the tagging scheme, profiles, Cost Explorer and CUR reporting, and chargeback. The same partner checks whether the work qualifies for POC or IW funding: typically $50K to $150K for startups. Depends on the workload; AWS approves. CloudRoute is free for startups.

we reply within24 hours
partner-filed funding$50K to $150K
CloudRoute fee for startups$0