DynamoSQL queries DynamoDB in your own AWS account using the IAM role you configure. DynamoDB RCU consumption is charged directly to your AWS account — DynamoSQL does not meter or bill for DynamoDB read capacity.Scan-heavy queries — those where the optimizer cannot match a suitable index — consume significantly more RCUs than index-backed queries. Use plan mode to verify which execution strategy the optimizer selected before running expensive queries against production tables.
If the plan tree shows Scan(...) for a query you expect to use an index, check that your GSI metadata is registered in the portal so the optimizer can see it.
DynamoSQL meters the number of API calls per tenant. Current limits and your rolling usage are visible in the portal under Settings > Usage.For programmatic access to usage data, use the /v1/usage/summary endpoint.If you exceed your API call limit, the API returns a 429 response. Retry with exponential backoff. If you consistently hit the limit, contact support to discuss a higher quota.
There are no artificial row limits beyond the maxRows pagination parameter, which defaults to 100 rows per request. You can increase it per-request or page through the full result set using resumeIdx. See Pagination for details.
{"docsConfig":{"$schema":"https://mintlify.com/docs.json","theme":"mint","name":"DynamoSQL","colors":{"primary":"#FF9900","light":"#FFB84D","dark":"#CC7A00"},"favicon":"https://mintcdn.com/jmrapidapps/zPacbr5tPJpZGVDx/public/logo/favicon.svg?fit=max\u0026auto=format\u0026n=zPacbr5tPJpZGVDx\u0026q=85\u0026s=174d2799d2c7fea0cca12c504852eb82","logo":{"light":"https://mintcdn.com/jmrapidapps/zPacbr5tPJpZGVDx/public/logo/light.svg?fit=max\u0026auto=format\u0026n=zPacbr5tPJpZGVDx\u0026q=85\u0026s=b0b5e003ebd8596309d1d3c65f1766b2","dark":"https://mintcdn.com/jmrapidapps/zPacbr5tPJpZGVDx/public/logo/dark.svg?fit=max\u0026auto=format\u0026n=zPacbr5tPJpZGVDx\u0026q=85\u0026s=edbec3c5e90a09e52d9fb90ed5ebed42","href":"https://dynamosql.com"},"api":{"openapi":"openapi.yaml","mdx":{"server":"https://api.dynamosql.com"}},"navbar":{"links":[{"label":"Postman Collection","href":"/guides/postman"}],"primary":null},"footer":{"socials":{"github":"https://github.com/dynamosql"}},"integrations":{"posthog":{"apiKey":"phc_AbHH4xBEuoGEcrzBotzsBK3KUbXXaMc9WyPdSjg7soPf"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"jmrapidapps","hasAudioNarration":false,"actualSubdomain":"jmrapidapps","customDomains":["docs.dynamosql.com"],"gitSource":{"type":"github","owner":"jmrapidapps","repo":"dynamosql-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6a21ec174469870420d777be","collectionId":"b13809aa-716c-4dcc-bf02-a17b49ccbb8c","schemaVersion":"v2"},"entitlements":{},"buildId":"6a21ec174469870420d777be:success","clientVersion":"0.0.4044","searchFilterCounts":[{"language":"default","tag":"API Reference","count":12},{"language":"default","tag":"SQL Reference","count":10},{"language":"default","tag":"Schemas","count":7},{"language":"default","tag":"Guides","count":6},{"language":"default","tag":"MCP Server","count":4},{"language":"default","tag":"Authentication","count":3},{"language":"default","tag":"Get Started","count":3},{"language":"default","tag":"Changelog","count":1}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"guides/rate-limits-and-quotas","slug":"/guides/rate-limits-and-quotas","pageMetadata":{"title":"Rate Limits and Quotas","description":"Per-tenant metering, DynamoDB capacity, and usage tracking.","href":"/guides/rate-limits-and-quotas"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Per-tenant metering, DynamoDB capacity, and usage tracking.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{Heading,Table,Tip}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tip)_missingMdxReference(`Tip`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`2`,id:`dynamodb-capacity`,children:`DynamoDB Capacity`}),`\n`,_jsxs(_components.p,{children:[`DynamoSQL queries DynamoDB in your own AWS account using the IAM role you configure. `,_jsx(_components.strong,{children:`DynamoDB RCU consumption is charged directly to your AWS account`}),` — DynamoSQL does not meter or bill for DynamoDB read capacity.`]}),`\n`,_jsxs(_components.p,{children:[`Scan-heavy queries — those where the optimizer cannot match a suitable index — consume significantly more RCUs than index-backed queries. Use `,_jsx(_components.a,{href:`/guides/query-modes`,children:`plan mode`}),` to verify which execution strategy the optimizer selected before running expensive queries against production tables.`]}),`\n`,_jsx(Tip,{children:_jsxs(_components.p,{children:[`If the plan tree shows `,_jsx(_components.code,{children:`Scan(...)`}),` for a query you expect to use an index, check that your GSI metadata is registered in the portal so the optimizer can see it.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`api-call-volume`,children:`API Call Volume`}),`\n`,_jsxs(_components.p,{children:[`DynamoSQL meters the number of API calls per tenant. Current limits and your rolling usage are visible in the portal under `,_jsx(_components.strong,{children:`Settings > Usage`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`For programmatic access to usage data, use the `,_jsx(_components.code,{children:`/v1/usage/summary`}),` endpoint.`]}),`\n`,_jsxs(_components.p,{children:[`If you exceed your API call limit, the API returns a `,_jsx(_components.code,{children:`429`}),` response. Retry with exponential backoff. If you consistently hit the limit, contact support to discuss a higher quota.`]}),`\n`,_jsx(Heading,{level:`2`,id:`row-limits`,children:`Row Limits`}),`\n`,_jsxs(_components.p,{children:[`There are no artificial row limits beyond the `,_jsx(_components.code,{children:`maxRows`}),` pagination parameter, which defaults to `,_jsx(_components.code,{children:`100`}),` rows per request. You can increase it per-request or page through the full result set using `,_jsx(_components.code,{children:`resumeIdx`}),`. See `,_jsx(_components.a,{href:`/guides/pagination`,children:`Pagination`}),` for details.`]}),`\n`,_jsx(Heading,{level:`2`,id:`reducing-costs`,children:`Reducing Costs`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Practice`}),_jsx(_components.th,{children:`Effect`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Use plan mode during development`}),_jsx(_components.td,{children:`Zero RCU cost for SQL validation`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Add GSIs for common WHERE predicates`}),_jsx(_components.td,{children:`Converts scans to index queries`})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[`Use `,_jsx(_components.code,{children:`LIMIT`}),` to cap row counts`]}),_jsx(_components.td,{children:`Reduces RCUs for exploratory queries`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Prefer key-based lookups over scans`}),_jsx(_components.td,{children:`DynamoDB key reads are the cheapest operation`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Filter at the SQL layer, not in application code`}),_jsx(_components.td,{children:`Fewer rows fetched from DynamoDB`})]})]})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Rate Limits and Quotas","description":"Per-tenant metering, DynamoDB capacity, and usage tracking.","href":"/guides/rate-limits-and-quotas"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"DynamoDB Capacity","slug":"dynamodb-capacity","depth":2,"children":[]},{"title":"API Call Volume","slug":"api-call-volume","depth":2,"children":[]},{"title":"Row Limits","slug":"row-limits","depth":2,"children":[]},{"title":"Reducing Costs","slug":"reducing-costs","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"jmrapidapps","siteName":"DynamoSQL","title":"Rate Limits and Quotas - DynamoSQL","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-03-11T21:04:08.119Z","originalFileLocation":"guides/rate-limits-and-quotas.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Per-tenant metering, DynamoDB capacity, and usage tracking.\">\u003cmeta data-mint-head name=\"application-name\" content=\"DynamoSQL\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/jmrapidapps/W3kttRsvcCgl31Iw/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/jmrapidapps/W3kttRsvcCgl31Iw/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/jmrapidapps/W3kttRsvcCgl31Iw/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/jmrapidapps/W3kttRsvcCgl31Iw/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/jmrapidapps/W3kttRsvcCgl31Iw/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/jmrapidapps/W3kttRsvcCgl31Iw/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/jmrapidapps/W3kttRsvcCgl31Iw/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/jmrapidapps/W3kttRsvcCgl31Iw/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/jmrapidapps/W3kttRsvcCgl31Iw/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Rate Limits and Quotas - DynamoSQL\">\u003cmeta data-mint-head property=\"og:description\" content=\"Per-tenant metering, DynamoDB capacity, and usage tracking.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"DynamoSQL\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.dynamosql.com/guides/rate-limits-and-quotas\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://jmrapidapps.mintlify.app/_mintlify/api/og/v2?division=Guides\u0026amp;title=Rate+Limits+and+Quotas\u0026amp;description=Per-tenant+metering%2C+DynamoDB+capacity%2C+and+usage+tracking.\u0026amp;theme=e55e953bcc4617de573a62ae\u0026amp;signature=8489797aa6dbb18887453caeef295ef01b6492a54689136b1e05e6a860d78a01\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Rate Limits and Quotas - DynamoSQL\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Per-tenant metering, DynamoDB capacity, and usage tracking.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://jmrapidapps.mintlify.app/_mintlify/api/og/v2?division=Guides\u0026amp;title=Rate+Limits+and+Quotas\u0026amp;description=Per-tenant+metering%2C+DynamoDB+capacity%2C+and+usage+tracking.\u0026amp;theme=e55e953bcc4617de573a62ae\u0026amp;signature=8489797aa6dbb18887453caeef295ef01b6492a54689136b1e05e6a860d78a01\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/jmrapidapps/W3kttRsvcCgl31Iw/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"DynamoSQL\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#FF9900\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.dynamosql.com/guides/rate-limits-and-quotas\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/guides/rate-limits-and-quotas.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.dynamosql.com/#organization\",\"name\":\"DynamoSQL\",\"url\":\"https://docs.dynamosql.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/jmrapidapps/zPacbr5tPJpZGVDx/public/logo/light.svg?fit=max\u0026auto=format\u0026n=zPacbr5tPJpZGVDx\u0026q=85\u0026s=b0b5e003ebd8596309d1d3c65f1766b2\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.dynamosql.com#website\",\"name\":\"DynamoSQL\",\"url\":\"https://docs.dynamosql.com\",\"publisher\":{\"@id\":\"https://docs.dynamosql.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.dynamosql.com/guides/rate-limits-and-quotas#webpage\",\"url\":\"https://docs.dynamosql.com/guides/rate-limits-and-quotas\",\"name\":\"Rate Limits and Quotas\",\"description\":\"Per-tenant metering, DynamoDB capacity, and usage tracking.\",\"dateModified\":\"2026-03-11T21:04:08.119Z\",\"isPartOf\":{\"@id\":\"https://docs.dynamosql.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.dynamosql.com/guides/rate-limits-and-quotas#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.dynamosql.com/guides/rate-limits-and-quotas#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Guides\",\"item\":\"https://docs.dynamosql.com/guides/query-modes\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Rate Limits and Quotas\",\"item\":\"https://docs.dynamosql.com/guides/rate-limits-and-quotas\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.dynamosql.com/guides/rate-limits-and-quotas#article\",\"headline\":\"Rate Limits and Quotas\",\"name\":\"Rate Limits and Quotas\",\"description\":\"Per-tenant metering, DynamoDB capacity, and usage tracking.\",\"url\":\"https://docs.dynamosql.com/guides/rate-limits-and-quotas\",\"mainEntityOfPage\":{\"@id\":\"https://docs.dynamosql.com/guides/rate-limits-and-quotas#webpage\"},\"dateModified\":\"2026-03-11T21:04:08.119Z\",\"publisher\":{\"@id\":\"https://docs.dynamosql.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.dynamosql.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"DynamoSQL\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"DynamoSQL","nav":{"global":null,"groups":[{"group":"Get Started","pages":[{"title":"Quickstart","href":"/guides/quickstart"},{"title":"Authentication","href":"/guides/authentication"},{"title":"IAM Setup","href":"/guides/iam-setup"}]},{"group":"Guides","pages":[{"title":"Query Modes","href":"/guides/query-modes"},{"title":"Response Formats","href":"/guides/response-formats"},{"title":"Pagination","href":"/guides/pagination"},{"title":"Error Handling","description":"Interpret error responses and handle failures gracefully.","href":"/guides/error-handling"},{"title":"Rate Limits and Quotas","href":"/guides/rate-limits-and-quotas"},{"title":"Postman Collection","description":"Import the DynamoSQL API into Postman","href":"/guides/postman"}]},{"group":"MCP Server","pages":[{"title":"Overview","href":"/mcp/overview"},{"title":"MCP Quickstart","href":"/mcp/quickstart"},{"title":"MCP Authentication","href":"/mcp/authentication"},{"title":"Tools and Resources","href":"/mcp/tools-and-resources"}]},{"group":"API Reference","pages":[{"group":"Authentication","pages":[{"title":"Authentication","href":"/api-reference/authentication"},{"title":"Get Access Token","openapi":"POST /v1/auth/token","href":"/api-reference/authentication/get-token"},{"title":"Refresh Access Token","openapi":"POST /v1/auth/refresh","href":"/api-reference/authentication/refresh-token"}]},{"title":"Query","openapi":"POST /v1/query","href":"/api-reference/query"},{"group":"Schemas","pages":[{"title":"List Schemas","openapi":"GET /v1/schemas","href":"/api-reference/schemas/list"},{"title":"Create Schema","openapi":"POST /v1/schemas","href":"/api-reference/schemas/create"},{"title":"Get Schema","openapi":"GET /v1/schemas/{schemaName}","href":"/api-reference/schemas/get"},{"title":"Update Schema","openapi":"PATCH /v1/schemas/{schemaName}","href":"/api-reference/schemas/update"},{"title":"Delete Schema","openapi":"DELETE /v1/schemas/{schemaName}","href":"/api-reference/schemas/delete"},{"title":"Refresh Metadata","openapi":"POST /v1/schemas/{schemaName}/refresh-metadata","href":"/api-reference/schemas/refresh-metadata"},{"title":"Validate Role","openapi":"POST /v1/schemas/{schemaName}/validate-role","href":"/api-reference/schemas/validate-role"}]},{"title":"Usage Summary","openapi":"GET /v1/usage/summary","href":"/api-reference/usage"}]},{"group":"SQL Reference","pages":[{"title":"SQL Reference Overview","href":"/sql-reference/overview"},{"title":"SELECT","href":"/sql-reference/select"},{"title":"FROM and JOINs","href":"/sql-reference/from-and-joins"},{"title":"WHERE Predicates","href":"/sql-reference/where-predicates"},{"title":"Grouping and Aggregation","href":"/sql-reference/grouping-and-aggregation"},{"title":"Subqueries and CTEs","href":"/sql-reference/subqueries-and-ctes"},{"title":"Set Operations","href":"/sql-reference/set-operations"},{"title":"Expressions and Operators","href":"/sql-reference/expressions-and-operators"},{"title":"Functions","href":"/sql-reference/functions"},{"title":"Limitations","href":"/sql-reference/limitations"}]},{"group":"Changelog","pages":[{"title":"2026 Changelog","href":"/changelog/2026"}]}]},"basePath":"","title":"Rate Limits and Quotas - DynamoSQL","buildId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","deploymentId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","dynamics":[],"chunks":[]}