Skip to main content
INS // Insights

AWS Config Configuration Item Cost

Updated September 2026 · 10 min read
AWS Config Configuration Item Cost

The CFO sees AWS Config as a line that grew after someone turned on recording in every account. The staff engineer owns the pattern: what gets recorded, how often, and which rules fire on each change. AWS Config configuration item cost is not the conformance pack story. It is the meter on every configuration item Config writes, plus the evaluations those items trigger when rules stay attached at org scale.

Rutagon builds that pattern for mid-market SaaS on AWS. We inventory recorders, recording groups, and rule attach points, then show which bill line belongs to continuous recording versus evaluations. The work sits next to the AWS cloud infrastructure we already run for landing-zone and evidence pipelines.

AWS Config Configuration Item Cost on Continuous Recording

A configuration item is a point-in-time record of a supported resource: type, identifiers, relationships, and the configuration Config captured. Continuous recording writes a new item when the resource changes, and it also writes periodic items so Config can prove the resource still exists. Daily recording writes far fewer items. The billing dimension is the count of items Config produces, not the size of the JSON blob and not whether a human opened the console.

Mid-market SaaS teams turn on continuous recording because a security review asked for “Config on.” That sentence is incomplete. Continuous recording on every resource type in every member account is a product decision. A content platform with a handful of accounts can absorb it. A multi-account org with autoscaling groups, ephemeral CI runners, and a new Lambda on every merge will mint items as a side effect of shipping software.

The staff engineer should treat the recorder as a product with a scope. AWS documents the service model in the AWS Config developer guide. The public pricing page lists configuration items as their own meter. We do not quote a dollar figure. Open Cost Explorer filtered to Config and group by usage type. The item count is the lever.

Recording groups are the control. You can exclude resource types that churn and never appear in an audit sample: ephemeral batch compute, short-lived preview environments, and CI agent instances that live for one pipeline. You keep the types an auditor or an incident actually needs: IAM, KMS, S3, RDS, load balancers, and the network path in front of production. That is not a conformance pack. It is a recording contract.

Periodic snapshots still cost items. Daily recording cuts change-driven items and keeps a slower heartbeat. You lose same-day history for a security group that flipped twice before lunch. You keep a cheaper detective baseline. Daily recording is not “free Config.” It is a different meter profile.

Rule Evaluations Are a Second Meter

Configuration items are half the bill. Config rules evaluate resources against a predicate. Each evaluation is a separate usage type. A change that writes one item can trigger many evaluations if the same resource matches many rules, or if you attached the same managed rule in every account instead of once from a delegated administrator.

This is where staff engineers get surprised after a “turn on the CIS rules” ticket. The pack conversation lives elsewhere. We already wrote how packs show up in an evidence program in AWS Config conformance packs for SOC 2. This article stays on the meters: items recorded, evaluations fired. If your pack is quiet and the bill still climbs, look at recording first. If recording is scoped and the bill still climbs, look at how many rules evaluate how often.

Custom rules that invoke Lambda add invoke cost on top of Config evaluations. Managed rules do not add a Lambda line, but they still evaluate. Periodic rules evaluate on a schedule even when nothing changed. Change-triggered rules evaluate when Config sees a relevant item. A periodic rule on a high-count resource type is a quiet monthly tax.

We treat rule attach as code. Terraform that loops for_each over every account and every managed rule identifier will multiply evaluations without anyone opening the Config console. The fix is not “delete Config.” The fix is one org-level aggregator, a short list of rules that map to controls you actually operate, and exceptions tracked as data, not as another copy of the same rule in a sandbox account.

What a Mid-Market SaaS Recorder Should Capture

A typical pattern we ship: production and shared-services accounts record continuously on identity, data stores, encryption keys, and ingress. Non-production accounts use a narrower recording group. Preview accounts that live for a pull request either stay out of the organization recorder or record only the resource types that can leak (public buckets, open security groups, IAM role trusts).

Relationships inflate item size in the console, not the item meter. Config still bills per item. Optimize how many resources Config is asked to watch and how often they change, not JSON pretty-print.

Tags do not reduce item count. They allocate the Config line after the fact. Cost allocation tags will not shrink Config. They show which team’s churn is paying for detective coverage.

An aggregator centralizes findings. It is not a substitute for scoping member recorders. An aggregator that receives noise from every sandbox still stores and queries noise.

How We Trace the Config Bill Line

We start in Cost Explorer with the Config service filter and usage types that mention configuration items versus rule evaluations. Then we list recorders and recording groups in every account. Then we count rules and whether they are periodic or change-triggered. Only after that do we open a resource inventory and ask which types churn.

A useful CLI check is boring on purpose:

aws configservice describe-configuration-recorders
aws configservice describe-configuration-recorder-status
aws configservice describe-config-rules --query 'ConfigRules[].{Name:ConfigRuleName,Source:Source.Owner,MaxAge:MaximumExecutionFrequency}'

If a recorder is ON with allSupported and includeGlobalResourceTypes in an account that creates IAM jobs all day, you already know why items spike. If rules show a long periodic list on AWS::EC2::Instance in an autoscaling account, you already know why evaluations spike.

We pair this with AWS Cost Anomaly Detection setup so the next recorder change does not wait for month-close. Anomaly Detection will not explain Config. It will page the staff engineer when the Config usage type steps up after a Terraform apply.

When the same org also dumps logs forever, fix that on the log meter, not here. CloudWatch log retention cost is a different line.

If an auditor asks why a resource type is missing from Config, the answer is the recording contract. That contract is the artifact. The bill is the feedback loop that tells you the contract is too wide.

Frequently Asked Questions

Does daily recording eliminate AWS Config configuration item cost?

No. Daily recording changes how often Config writes items, and you still pay for each item plus rule evaluations on their schedule. Daily recording is a meter change, not a delete. Teams that need same-day change history for production IAM or security groups usually keep continuous recording on those types and drop daily-only coverage on high-churn compute.

Why did Config rise after we added managed rules but left recording alone?

Managed rules add evaluations, and a single configuration item can satisfy many rules, including periodic rules that fire when nothing changed. If Cost Explorer shows the evaluation usage type moving while the item usage type is flat, the recorder is not the new cost. Collapse duplicate rules, drop periodic rules you cannot act on, and stop copying the same rule into every sandbox.

Do configuration items include global IAM the same way as regional resources?

IAM users, roles, and policies are global and still produce items when the recorder is told to include global resource types. That flag is easy to leave on in every region’s mental model even though IAM is not regional. One org-level decision should own global recording so you do not treat IAM churn as a per-region surprise. Check the recorder configuration, not the region dropdown.

Can we keep Config for production and turn it off in developer accounts?

You can, and many mid-market orgs should. Developer accounts still create public buckets and open security groups, so a narrow recording group is usually enough. A full continuous recorder on every resource type in a playground account is how Config becomes a line the CFO cannot map to a control. Write the split as code so a new account from Control Tower does not inherit production recording by default.

If the Config line is the one you cannot explain at month-close, send the invoice usage types. We will trace the specific bill line — items versus evaluations — and return a recording-group change you can apply. Call 907-841-8407, email contact@rutagon.com, or use rutagon.com/contact.