FinOps Center
AI MAP & Migration Tracking

Stop losing MAP credits to tagging gaps and billing confusion.

FinOps Center tracks every eligible billing entity — infrastructure resources for standard MAP, inference profiles for MAP AI — through its lifecycle from eligibility confirmation through credit receipt. No migration dollar goes unclaimed. No Product Owner decides what's eligible. The system derives it all.

Your MAP credits depend on a tag your team might not know exists.

WHY DID WE BUILD?

MAP credits don't arrive automatically. They accrue based on eligible spend against resources tagged with the MAP cost allocation tag. If a resource is missing the tag, that spend doesn't count — and the credit doesn't arrive. Most teams don't find out until the milestone report lands short.

When credits do arrive, they're applied at the consolidated billing level — pooled across every linked account. The product team whose migration workload earned the credit has no native way to see their share. Finance reverse-engineers it manually, month after month.

For MAP AI, the problem compounds. Bedrock has no taggable resource ARN — the tag lives on an Application Inference Profile your application may not even be routing through yet. AI workload spend that looks perfectly attributable to a team may be invisible to MAP accrual because no one created the profile, or no one tagged it, or someone tagged it and the tag drifted.

FinOps Center closes both gaps. Every billing entity is tracked through a defined lifecycle. Every credit is matched to the workload that earned it. Every role sees the number relevant to their work.

CREATE MAP CONTRACT — IN FINOPS CENTER

MAP contracts created in FinOps Center — not the AWS console.

FinOps Leads create MAP contracts directly inside FinOps Center using a guided four-step wizard. Select eligible services using Standard or AI Modernization defaults, define accounts in scope, and configure auto-enrollment rules — all without leaving the platform.

Create MAP Contract wizard — Step 2 of 4, Eligible Services, showing Standard and AI Modernization defaults with Amazon Bedrock selected
Standard defaults

One-click to apply the standard MAP eligible service set — EC2, Lambda, EKS, RDS, DynamoDB, S3. No manual checklist required.

AI Modernization defaults

Adds Amazon Bedrock and SageMaker to the eligible set. Applies when your MAP contract covers AI workload migration as well as infrastructure.

Bedrock guidance built in

When Bedrock is selected as an eligible service, FinOps Center automatically evaluates every AI workload in covered accounts against inference profile coverage and generates the appropriate Cloud Engineer task per workload — Create Profile, Add to Profile, or Tag Profile. No separate reminder needed. No manual inventory required.

DERIVED, NOT DECLARED

Product Owners never pick a MAP program. The system does it for them.

Once a FinOps Lead creates a MAP contract for an account, every eligible billing entity in that account is automatically evaluated against the contract. Product Owners creating workloads in Spaces never see a “MAP AI Workload” option, never pick a contract, never classify their own spend. They claim what they own. The rollup does the rest.

Standard MAP
(active MAP contract in billing account)
× (resource ARN's map-migrated tag state)

Eligibility derived from the resource ARN. Cloud Engineer tags the infrastructure resource.

MAP AI
(active MAP AI contract in billing account)
× (inference profile's map-migrated tag state)

Eligibility derived from the Application Inference Profile. Cloud Engineer creates and tags the profile.

One rule, two billing entities. Zero manual classification. The Product Owner sees their credit attribution; they never touch the derivation logic that produced it.

THE FIVE STATES

Every MAP-eligible billing entity has a state. Most tools don't track it.

FinOps Center assigns a lifecycle state to every billing entity that appears in your CUR as MAP-eligible. That state determines whether credit is accruing, at risk, or lost.

ELIGIBLE

Billing entity (resource ARN or inference profile) confirmed in CUR as MAP-eligible. mapEligibilityDate is set on first CUR confirmation. The clock starts here.

PENDING_TAG

Eligible but untagged. For infrastructure, the resource ARN lacks the map-migrated tag. For AI, either the application is not routing through an inference profile at all, or the profile exists but lacks the tag. Every day in this state is spend that won't accrue MAP credits. FinOps Center surfaces these immediately to the assigned Cloud Engineer.

🏷TAGGED

MAP cost allocation tag confirmed present and correct on the relevant billing entity (resource ARN or inference profile). Spend is accruing toward MAP credit milestones.

STALE_TAG

Tag was present but has drifted — removed, overwritten, or altered. A CloudEngineeringTask is auto-created. Credit accrual stops until resolved. For AI workloads, this also fires if an application stops routing through a tagged inference profile and falls back to direct model invocation.

Drift path from TAGGED
STALE_TAG

Tag was present but has drifted — removed, overwritten, or altered. A CloudEngineeringTask is auto-created. Credit accrual stops until resolved.

→ CloudEngineeringTask

MAP AI — THREE TASK TYPES FOR CLOUD ENGINEERING

Infrastructure MAP has one tag action. MAP AI has three.

For infrastructure MAP, the Cloud Engineer action is always “tag the resource.” For MAP AI, the required action depends on the application's current state.

Create Profile
Situation

Application is invoking Bedrock directly, without an inference profile.

Task

Create an Application Inference Profile for the model/region combination, tag it map-migrated, update the application to route through the profile ARN.

Add to Profile
Situation

An inference profile exists but this application is not routing through it.

Task

Update the application to route through the existing profile ARN. No new profile required.

Tag Profile
Situation

The inference profile exists and is in use, but the map-migrated tag is missing or has drifted.

Task

Apply or reapply the map-migrated tag to the existing inference profile.

All three task types are auto-generated by the nightly pipeline based on the observed state of each AI workload's Bedrock usage pattern in CUR.

THE NIGHTLY PIPELINE

Credit matching that runs while you sleep.

When your CUR lands in S3 each morning, FinOps Center's pipeline processes every charge line — confirming eligibility, verifying tags, matching MAP credits via the mig* promotion code pattern, and updating every role's view before the workday starts.

S3 CUR Landing

CUR2 file lands in S3 ~7am daily

ProcessCUR Lambda

Event-driven trigger on S3 object creation

MAP Extension

Tags verified, eligibility states updated, drift detected

Credit Parser

promotionCode matching mig* pattern, expiry-first pooling applied

Scoreboard Metrics

MAP Compliance Rate updated per team, portfolio, product

QuickSight SPICE

Agent Bill and dashboards reflect today's MAP state by morning

Auto-claiming enabled

For accounts where 100% of spend is allocated to a single MAP workload, FinOps Center automatically claims credits without requiring manual attribution. Finance teams see the correct numbers without the manual reconciliation.

DRIFT DETECTION

Tags drift. MAP credit accrual stops immediately.

A TAGGED billing entity doesn't stay TAGGED automatically. Infrastructure changes, tag overwrites, and configuration updates all cause drift. FinOps Center detects it on the next pipeline run and acts.

Drift detected

On the nightly pipeline run, FinOps Center finds that a billing entity's MAP tag has been removed, altered, or overwritten. The state transitions from TAGGED → STALE_TAG immediately.

CloudEngineeringTask created

A task is auto-created and assigned to the Cloud Engineer responsible. The task includes the resource ID or profile ARN, the last known correct tag value, the date drift was detected, and the MAP credit accrual impact per day unresolved.

Resolution confirmed

Once the tag is corrected, the next pipeline run confirms it in CUR and transitions the entity back to TAGGED. The task closes automatically. Credit accrual resumes for subsequent spend.

WHO SEES WHAT

MAP visibility scoped to each role.

Every persona in FinOps Center sees the MAP data relevant to their work — not the full billing complexity, not a generic dashboard. RBAC enforces the scope at the data layer.

FinOps Lead

  • Portfolio-wide MAP Compliance Rate
  • Total MAP credits claimed vs. projected
  • PENDING_TAG exposure in dollar terms
  • Compliance trend over rolling 30 days

Portfolio Manager

  • Compliance breakdown by product
  • MAP Compliance Rate in CFM Scoreboard
  • PENDING_TAG resources per product team
  • Credit attribution per portfolio

Cloud Engineer

  • Assigned PENDING_TAG task list
  • STALE_TAG drift alerts via CloudEngineeringTask
  • Tagging confirmation timeline
  • Resource-level lifecycle state view
  • MAP AI task queue — Create Profile / Add to Profile / Tag Profile

Product Owner

  • MAP eligibility status for owned workloads (derived, read-only)
  • Monthly credit attribution to owned workloads
  • Coverage rate for owned workloads
  • Notifications when Cloud Engineer action is needed to unblock credit accrual — with no action required of the Product Owner
ASK YOUR MAP DATA

Every MAP question has an answer in Agent Bill.

Compliance rate, credit attribution, at-risk spend, open tagging tasks — Agent Bill answers at every level of your hierarchy, in plain language, in real time.

FinOps Lead

How much MAP credit have we claimed this month versus what we projected?

Agent Bill
Agent Bill

You've claimed $47,200 in MAP credits month-to-date against a $52,000 projection. The gap is 3 resources in PENDING_TAG state in the Platform portfolio — $4,800 in daily eligible spend that isn't accruing. Two are Cloud Engineer–assigned tasks opened today. The third was tagged yesterday but the pipeline hasn't confirmed it yet — it will resolve tonight.

CFM Scoreboard signal

MAP Compliance Rate is a weighted Scoreboard signal.

MAP Compliance Rate contributes to every team's CFM Scoreboard grade alongside CFM Efficiency Score, EDP Tracking, and Resource Ownership. A low MAP compliance rate drags the overall grade — making MAP tagging visible to leadership in the same weekly review where they see cloud spend. For AI-heavy portfolios, inference profile coverage drives this metric as much as resource-level tagging — both surface in the same Scoreboard, under the same MAP Compliance Rate signal.

See the CFM Scoreboard

WHERE IT RUNS

All of this happens inside your AWS account.

Your CUR data, your MAP tags, your credit history — none of it leaves your environment. The nightly pipeline runs in your Lambda. The Scoreboard data lives in your QuickSight SPICE. FinOps Center is a tenant in your account, not a pipeline to ours.