All Tools View Categories About Contact Privacy

IAM Quota & Limits Reference

Searchable table of commonly-cited AWS IAM default quotas — adjustable vs. hard limit, clearly labeled.

These are commonly-cited defaults that can and do change. Many are adjustable per-account via Service Quotas. Always verify current values in the AWS Service Quotas console before relying on any number below.
CategoryQuotaDefault valueAdjustable?Note

About IAM Quota & Limits Reference

IAM enforces dozens of numeric quotas — how many roles an account can hold, how many managed policies can attach to one role, how large a policy document can be, how long a role session can last — and they are scattered across AWS's documentation with no single at-a-glance table. IAM Quota & Limits Reference is a searchable table of the commonly-cited AWS IAM default quotas, each explicitly labeled as either adjustable via the Service Quotas console or a fixed hard limit that cannot be raised by any request.

That adjustable-vs-hard-limit distinction matters more than the raw numbers themselves. Quotas like roles per account (1,000), users per account (5,000), groups per account (300), customer-managed policies per account (1,500), and managed policies attached per role/user/group (10) are all defaults that AWS commonly allows raising through a Service Quotas request — an account that has been running a while may already be operating well above the published default for several of these. Other numbers are hard limits no request can move: the 6,144/10,240/2,048/5,120-character managed/role-inline/user-inline/group-inline policy size quotas, the 10-groups-per-user cap, the exactly-2-access-keys-per-user cap, the 5-versions-per-managed-policy cap, the 12-hour (43,200 second) maximum role session duration, and the separate 1-hour cap that applies specifically when a session is obtained through role chaining (using one assumed role's session to assume a second role).

Role and user name length (64 characters) and policy name length (128 characters) are included but marked approximate — worth double-checking against current AWS documentation rather than treated as certain. SAML and OIDC identity provider counts per account are included the same way, marked approximate, and only included because there is reasonable confidence in the figure, not certainty.

These are commonly-cited defaults that can and do change. AWS revises published quota values over time, and many are soft limits specific accounts may have already had increased. Verify current values in the AWS Service Quotas console before relying on any number shown here for capacity planning or an actual deployment decision.

Features

  • ~19 commonly-cited AWS IAM default quotas in one searchable table.
  • Adjustable (Service Quotas) vs. hard-limit labeling on every row.
  • Approximate figures flagged explicitly (name-length limits, federation provider counts) rather than stated with false confidence.
  • Covers roles, users, groups, policies, and federation quotas together.
  • Live search/filter across category, item, value, and note.
  • Visible disclaimer to verify current values in the AWS Service Quotas console.
  • 100% client-side.

How to Use

  1. Browse or search the table (e.g. "session", "policy size", "groups").
  2. Check the Adjustable? column to know whether a Service Quotas request could raise that specific number.
  3. Note any row marked approximate and double-check it against current AWS documentation if precision matters.
  4. Verify in the AWS Service Quotas console before relying on any figure for a real decision.

Examples

Example 1 — planning a large account. Search "per account" to see the account-wide caps (roles, users, groups, managed policies) that AWS commonly allows raising.

Example 2 — hitting an attach error. Search "attached" to find the 10-managed-policies-per-role/user default quota that a failed AttachRolePolicy call likely just hit.

Example 3 — session duration confusion. Search "session" to see both the 12-hour role session cap and the separate 1-hour role-chaining cap side by side.

Example 4 — policy sizing. Search "size" to see all four inline/managed policy character limits together.

Benefits

  • One table instead of scattered documentation pages.
  • Honest adjustable-vs-hard-limit labeling, not a flat list that implies everything can be raised.
  • Approximate figures flagged, not stated with false precision.
  • Searchable for fast lookup.
  • Repeated verification reminder given how often AWS quotas change.
  • Private — runs entirely in your browser.

Frequently Asked Questions

Are these numbers guaranteed to be currently accurate?
No. These are commonly-cited AWS IAM default quotas as of this writing — AWS changes default quota values over time, and many of them are "soft" limits your own account may have already had raised via a Service Quotas request. Always check the AWS Service Quotas console (or the current AWS IAM documentation) for the authoritative, up-to-date value for your account before relying on any number here.
What does "adjustable via Service Quotas" mean versus "hard limit"?
Adjustable quotas (like roles/users/groups/managed-policies per account, or managed policies attached per role/user/group) can usually be raised by submitting a request in the AWS Service Quotas console — AWS reviews and often approves reasonable increases. Hard limits (like the 6,144-character managed policy size, the 10-groups-per-user cap, or the 2-access-keys-per-user cap) are fixed by the IAM service itself and cannot be increased by any request.
Which rows are marked "approximate"?
Role/user name max length (64 characters) and policy name max length (128 characters) are marked approximate — these are commonly cited figures but are worth double-checking against current AWS IAM documentation, since they were not numbers this tool could verify with full confidence. SAML/OIDC provider counts are also marked approximate for the same reason.
Why is role session duration listed separately from chained role assumption?
They are genuinely different limits. A role's own <code>MaxSessionDuration</code> can be configured up to a hard cap of 12 hours (43,200 seconds). But if a session obtained by assuming one role is then used to assume a second role ("role chaining"), that second, chained session is capped at 1 hour regardless of either role's configured MaxSessionDuration — a separate, fixed restriction.
Can I search the table?
Yes — the search box filters across category, item name, value, and the explanatory note, so searching "session" surfaces both session-duration rows, and searching "6144" or "managed policy" surfaces the managed policy size row.
Does this tool call AWS to check my account's actual quotas?
No — this is a static reference table. Your account's real, current quota values (including any you have had raised) are only authoritative in the AWS Service Quotas console itself.
Is this the same information as the IAM Policy Size Checker tool?
The four inline/managed policy size rows here match the same real limits that tool checks a live policy document against — this tool is a browsable reference table of quotas generally, not a tool that measures your specific policy JSON.