A CLI-based dashboard to see your AWS Bedrock model quotas and usage.
Project description
bedrock-quota
A CLI-based dashboard to see your AWS Bedrock model quotas and usage.
The AWS console shows quota limits on one page and CloudWatch usage on another — nothing joins them per model. bedrock-quota pulls both and shows headroom per model, per region, so you know where you stand before you scale. Read-only, no dashboard to maintain.
Features
- Know your headroom — RPM, TPM, TPD quotas next to last-day usage, per model.
- Spot throttle risk early — ⚠ flagged when 7-day P90 TPM crosses 80% of quota.
- Every variant in one table — on-demand, cross-region, and global cross-region inference profiles.
- Drill into a model — per-period stats, stacked token charts, hourly heatmap, per-inference-profile breakdown.
- Multi-region view — each region loads independently, shown as a separate section.
- Keyboard-first — works over SSH, 5-minute metric cache.
Install
uvx bedrock-quota # try without installing (recommended)
uv tool install bedrock-quota # or install as a uv tool
pipx install bedrock-quota # or via pipx
pip install bedrock-quota # or plain pip
Quickstart
AWS_PROFILE=my-sso-profile AWS_DEFAULT_REGION=us-east-1 bedrock-quota
Credentials are picked up like any other AWS CLI tool — AWS_PROFILE, SSO, environment variables, or an attached instance role.
IAM permissions
Most developers already have enough read-only access through their SSO or dev IAM role and can skip this section. If you need to scope a dedicated policy, this is the minimum:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"bedrock:ListFoundationModels",
"bedrock:ListInferenceProfiles",
"bedrock:ListTagsForResource",
"cloudwatch:GetMetricData",
"cloudwatch:ListMetrics",
"servicequotas:ListServiceQuotas"
],
"Resource": "*"
}
]
}
Keyboard shortcuts
| Key | Action |
|---|---|
g |
Switch / add region |
p |
Switch provider |
r |
Refresh data |
Enter |
Open model detail screen |
Escape |
Back / close |
Ctrl+Q |
Quit |
Model detail
Press Enter on any row to open a per-model detail screen with stats (P50/P90/Avg/Max for TPD, RPM, TPM, latency), token charts, an hourly heatmap, and a per-inference-profile breakdown — for time periods Last 24h, Today, 7d, 14d, 30d, This Month, Last Month.
Troubleshooting
- No usage data — CloudWatch only records metrics for models you've actually invoked. Check that
AWS_DEFAULT_REGIONmatches the region you're calling Bedrock in. - Slow first load — the first run queries CloudWatch for every model across every time period; subsequent loads hit the 5-minute cache. Press
rto force-refresh. - Credentials error — run
aws configure,aws sso login, or setAWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY/AWS_DEFAULT_REGION.
Implementation notes
Usage data is queried from CloudWatch (AWS/Bedrock namespace, ModelId dimension): InputTokenCount + OutputTokenCount → TPM/TPD, Invocations → RPM, InvocationLatency → latency, InvocationThrottles / InvocationClientErrors / InvocationServerErrors → error counts. Quotas come from AWS Service Quotas. Model IDs are discovered from ListFoundationModels, ListInferenceProfiles, and observed CloudWatch dimensions, so cross-region variants like us.anthropic.claude-sonnet-4-6 match their quota automatically.
Development
git clone https://github.com/Kelet-ai/bedrock-quota
cd bedrock-quota
uv sync
uv run bedrock-quota
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file bedrock_quota-1.0.0.tar.gz.
File metadata
- Download URL: bedrock_quota-1.0.0.tar.gz
- Upload date:
- Size: 30.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.13 {"installer":{"name":"uv","version":"0.11.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ef1b98ad04e14c495f30ebbf22ed876eedc7560b9545b98166d6f2b8cf164003
|
|
| MD5 |
5338f26af7f739606be20c7ffc250e8b
|
|
| BLAKE2b-256 |
43ad29c820db1a87a7e1374069b8ebbaaeb15d29df2a7c7f5e61fafdc7752657
|
File details
Details for the file bedrock_quota-1.0.0-py3-none-any.whl.
File metadata
- Download URL: bedrock_quota-1.0.0-py3-none-any.whl
- Upload date:
- Size: 28.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.13 {"installer":{"name":"uv","version":"0.11.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fd282fa372ae74ab0c24d317b5f1b6612ec90e4d0d253998771d8d0f636aa2b0
|
|
| MD5 |
a6043b2cff5273762d386605437549ba
|
|
| BLAKE2b-256 |
ec190a9e10ea2ea56f2f962199d46cf282c76b4372160d3ccde49de7de35442e
|