Use the page and offset parameter to request only what you need
The offset parameter determines how many records are returned from a request.For example, if your app requires only the latest 10 transactions for an address, setting offset=10 should see significant speed improvements.
Use the startblock and endblock parameter if your block range is known
If your block range is known, such as transactions within the last 24 hours, your request will benefit from specifying startblock=<block_number> and endblock=latest.You can also use the latest keyword to specify the most recent block.
On chain activity (transaction TPS spikes) or temporary high request volumes on shared APIs can occasionally cause timeouts.If this persists, feel free to reach out to us.
You will receive an email reminder when you approach your API usage limit
From the API dashboard, you can monitor your API usage for suspicious activity, based on the IP and endpoint requests.If needed, you can monitor your API programmatically via the Usage endpoint.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Etherscan","description":"The complete onchain data API for the crypto ecosystem, across 50+ chains.","colors":{"primary":"#0784C3","light":"#0784C3","dark":"#0784C3"},"logo":{"light":"https://mintcdn.com/etherscan/O446YQrF1qMjlNwS/logo/etherscan-logo-dark.svg?fit=max\u0026auto=format\u0026n=O446YQrF1qMjlNwS\u0026q=85\u0026s=4e966e2dc30e631ecd17c82d5445201f","dark":"https://mintcdn.com/etherscan/O446YQrF1qMjlNwS/logo/etherscan-logo-light.svg?fit=max\u0026auto=format\u0026n=O446YQrF1qMjlNwS\u0026q=85\u0026s=61cb0a4a7a22bd9667ac9f22f72ed85e"},"favicon":"https://mintcdn.com/etherscan/O446YQrF1qMjlNwS/logo/etherscan-logo-circle.svg?fit=max\u0026auto=format\u0026n=O446YQrF1qMjlNwS\u0026q=85\u0026s=e0afd6fa2127dcb9f05292b819cddb9f","api":{"playground":{"display":"interactive"},"examples":{"prefill":false},"mdx":{"server":"https://api.etherscan.io"}},"navbar":{"links":[{"href":"https://etherscan.io/api/pricing","label":"Pricing"},{"href":"https://etherscan.io/contactus","label":"Support"}],"primary":{"type":"button","label":"Get started","href":"/set-up-your-api-key"}},"footer":{"socials":{"x":"https://x.com/etherscan","website":"https://etherscan.io"}},"errors":{"404":{"redirect":true}},"contextual":{"options":["copy","chatgpt","claude","cursor","vscode"],"display":"header"},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"etherscan","hasAudioNarration":false,"actualSubdomain":"etherscan","customDomains":["docs.etherscan.io"],"gitSource":{"type":"github","owner":"blocksolutions","repo":"mintlify-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6aeb0ec5b434e7d02a3a59df","collectionId":"3806edc7-5ab1-4759-a41c-0d7478bc153c","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6aeb0ec5b434e7d02a3a59df"},"entitlements":{"AI_CHAT":{"status":"DISABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"DISABLED"}},"buildId":"6aeb0ec5b434e7d02a3a59df","clientVersion":"0.0.4074","searchFilterCounts":[{"language":"default","tag":"API Endpoints","count":190},{"language":"default","tag":"Overview","count":27},{"language":"default","tag":"Account","count":18},{"language":"default","tag":"Guides","count":18},{"language":"default","tag":"Stats","count":14},{"language":"default","tag":"Geth/Parity Proxy","count":14},{"language":"default","tag":"Contract Verification","count":13},{"language":"default","tag":"Tokens","count":11},{"language":"default","tag":"Blocks","count":9},{"language":"default","tag":"Build with AI","count":9}]},"assistantConfig":{"deflection":{"enabled":true,"email":"apisupport@etherscan.io"}},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":true,"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":"rbac-expansion","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":"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":"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},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"privacy":{"consentBanner":{"enabled":true}},"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":":root{--color-rgb: 36, 107, 238;--navbar-bg-hsl: 220, 25%, 100%}:root.dark{--navbar-bg-hsl: 209, 23%, 9%}#navbar{overflow:hidden;background-color:hsla(var(--navbar-bg-hsl), 1);background-image:radial-gradient(at 14% 42%, hsla(var(--navbar-bg-hsl), 1) 0px, transparent 50%),\n radial-gradient(at 39% 9%, hsla(var(--navbar-bg-hsl), 1) 0px, transparent 50%),\n radial-gradient(at 95% 85%, hsla(var(--navbar-bg-hsl), 1) 0px, transparent 50%),\n radial-gradient(at 99% 61%, hsla(var(--navbar-bg-hsl), 1) 0px, transparent 50%),\n radial-gradient(at 91% 60%, rgba(var(--color-rgb), 0.4) 0px, transparent 50%),\n radial-gradient(at 69% 0%, rgba(var(--color-rgb), 0.4) 0px, transparent 50%)}#navbar::after{content:'';width:60rem;height:60rem;position:absolute;top:-150%;right:-30%;background-image:url('/images/abstract-lines-kb.svg');background-size:40rem;background-repeat:no-repeat;cursor:default;pointer-events:none}.data-\\[is-opaque\\=true\\]\\:bg-background-light[data-is-opaque=true]{background-color:initial!important}.data-\\[is-opaque\\=true\\]\\:dark\\:bg-background-dark\\/75:is(.dark *)[data-is-opaque=true]{background-color:initial!important}.prose:is(.dark *){color:#D1D1D1}.tryit-button{background-color:#0784C3!important}.nav-tag-pill-text[data-nav-tag]{background-color:#0784C3!important;color:#FFFFFF!important}.nav-tag-pill-text[data-nav-tag=\"PRO+\"]{background-color:#055a8c!important}a:has(.nav-tag-pill) div:has(>div>span.nav-tag-pill){display:block}a:has(.nav-tag-pill) div:has(>div>span.nav-tag-pill)>div:last-child{display:inline-flex;vertical-align:middle;margin-left:0.375rem}"}],"page":{"pagePath":"resources/best-practices","slug":"/resources/best-practices","pageMetadata":{"title":"Best Practices","description":"Practical tips for faster, more efficient Etherscan API requests, from pagination to block ranges.","href":"/resources/best-practices"},"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: \"Practical tips for faster, more efficient Etherscan API requests, from pagination to block ranges.\"\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`,..._provideComponents(),...props.components},{Heading,Tip}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Tip)_missingMdxReference(`Tip`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`3`,id:`limit-return-results`,children:`Limit Return Results`}),`\n`,_jsxs(Tip,{children:[`Use the `,_jsx(_components.code,{children:`page`}),` and `,_jsx(_components.code,{children:`offset`}),` parameter to request only what you need`]}),`\n`,_jsxs(_components.p,{children:[`The `,_jsx(_components.code,{children:`offset`}),` parameter determines how many records are returned from a request.`]}),`\n`,_jsxs(_components.p,{children:[`For example, if your app requires only the latest 10 transactions for an address, setting `,_jsx(_components.code,{children:`offset=10`}),` should see significant speed improvements.`]}),`\n`,_jsx(Heading,{level:`3`,id:`limit-your-block-range`,children:`Limit Your Block Range`}),`\n`,_jsxs(Tip,{children:[`Use the `,_jsx(_components.code,{children:`startblock`}),` and `,_jsx(_components.code,{children:`endblock`}),` parameter if your block range is known`]}),`\n`,_jsxs(_components.p,{children:[`If your block range is known, such as transactions within the `,_jsx(_components.a,{href:`/api-reference/endpoint/getblocknobytime`,children:`last 24 hours`}),`, your request will benefit from specifying `,_jsx(_components.code,{children:`startblock=\u003cblock_number>`}),` and `,_jsx(_components.code,{children:`endblock=latest`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`You can also use the `,_jsx(_components.code,{children:`latest`}),` keyword to specify the most recent block.`]}),`\n`,_jsx(Heading,{level:`3`,id:`implement-retry-logic-with-backoff`,children:`Implement Retry Logic with Backoff`}),`\n`,_jsx(_components.p,{children:`On chain activity (transaction TPS spikes) or temporary high request volumes on shared APIs can occasionally cause timeouts.`}),`\n`,_jsxs(_components.p,{children:[`If this persists, feel free to `,_jsx(_components.a,{href:`/resources/contact-us`,children:`reach out`}),` to us.`]}),`\n`,_jsx(Heading,{level:`3`,id:`monitor-usage`,children:`Monitor Usage`}),`\n`,_jsx(Tip,{children:`You will receive an email reminder when you approach your API usage limit`}),`\n`,_jsx(_components.p,{children:`From the API dashboard, you can monitor your API usage for suspicious activity, based on the IP and endpoint requests.`}),`\n`,_jsxs(_components.p,{children:[`If needed, you can monitor your API programmatically via the `,_jsx(_components.a,{href:`/api-reference/endpoint/getapilimit`,children:`Usage`}),` endpoint.`]})]})}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":"Best Practices","description":"Practical tips for faster, more efficient Etherscan API requests, from pagination to block ranges.","href":"/resources/best-practices"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Limit Return Results","slug":"limit-return-results","depth":3,"children":[]},{"title":"Limit Your Block Range","slug":"limit-your-block-range","depth":3,"children":[]},{"title":"Implement Retry Logic with Backoff","slug":"implement-retry-logic-with-backoff","depth":3,"children":[]},{"title":"Monitor Usage","slug":"monitor-usage","depth":3,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"etherscan","siteName":"Etherscan","title":"Best Practices - Etherscan","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-08-20T09:11:03.270Z","originalFileLocation":"resources/best-practices.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=\"Practical tips for faster, more efficient Etherscan API requests, from pagination to block ranges.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Etherscan\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/etherscan/PMbbZQeU1A_1WqNP/_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/etherscan/PMbbZQeU1A_1WqNP/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/etherscan/PMbbZQeU1A_1WqNP/_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/etherscan/PMbbZQeU1A_1WqNP/_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/etherscan/PMbbZQeU1A_1WqNP/_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/etherscan/PMbbZQeU1A_1WqNP/_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/etherscan/PMbbZQeU1A_1WqNP/_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/etherscan/PMbbZQeU1A_1WqNP/_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/etherscan/PMbbZQeU1A_1WqNP/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Best Practices - Etherscan\">\u003cmeta data-mint-head property=\"og:description\" content=\"Practical tips for faster, more efficient Etherscan API requests, from pagination to block ranges.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Etherscan\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.etherscan.io/resources/best-practices\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://etherscan.mintlify.site/_mintlify/api/og/v2?division=Guides\u0026amp;title=Best+Practices\u0026amp;description=Practical+tips+for+faster%2C+more+efficient+Etherscan+API+requests%2C+from+pagination+to+block+ranges.\u0026amp;theme=508771c6adde6156ee350715\u0026amp;signature=e6a309a0869d5b42723b58fe24a7d1f19d4f9e5667b17117e32811c7957ee1be\">\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=\"Best Practices - Etherscan\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Practical tips for faster, more efficient Etherscan API requests, from pagination to block ranges.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://etherscan.mintlify.site/_mintlify/api/og/v2?division=Guides\u0026amp;title=Best+Practices\u0026amp;description=Practical+tips+for+faster%2C+more+efficient+Etherscan+API+requests%2C+from+pagination+to+block+ranges.\u0026amp;theme=508771c6adde6156ee350715\u0026amp;signature=e6a309a0869d5b42723b58fe24a7d1f19d4f9e5667b17117e32811c7957ee1be\">\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/etherscan/PMbbZQeU1A_1WqNP/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Etherscan\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0784C3\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.etherscan.io/resources/best-practices\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/resources/best-practices.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.etherscan.io/#organization\",\"name\":\"Etherscan\",\"url\":\"https://docs.etherscan.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/etherscan/O446YQrF1qMjlNwS/logo/etherscan-logo-dark.svg?fit=max\u0026auto=format\u0026n=O446YQrF1qMjlNwS\u0026q=85\u0026s=4e966e2dc30e631ecd17c82d5445201f\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.etherscan.io#website\",\"name\":\"Etherscan\",\"url\":\"https://docs.etherscan.io\",\"publisher\":{\"@id\":\"https://docs.etherscan.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.etherscan.io/resources/best-practices#webpage\",\"url\":\"https://docs.etherscan.io/resources/best-practices\",\"name\":\"Best Practices\",\"description\":\"Practical tips for faster, more efficient Etherscan API requests, from pagination to block ranges.\",\"dateModified\":\"2026-08-20T09:11:03.270Z\",\"isPartOf\":{\"@id\":\"https://docs.etherscan.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.etherscan.io/resources/best-practices#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.etherscan.io/resources/best-practices#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Guides\",\"item\":\"https://docs.etherscan.io/contract-verification/verify-with-api\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Best Practices\",\"item\":\"https://docs.etherscan.io/resources/best-practices\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.etherscan.io/resources/best-practices#article\",\"headline\":\"Best Practices\",\"name\":\"Best Practices\",\"description\":\"Practical tips for faster, more efficient Etherscan API requests, from pagination to block ranges.\",\"url\":\"https://docs.etherscan.io/resources/best-practices\",\"mainEntityOfPage\":{\"@id\":\"https://docs.etherscan.io/resources/best-practices#webpage\"},\"dateModified\":\"2026-08-20T09:11:03.270Z\",\"publisher\":{\"@id\":\"https://docs.etherscan.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.etherscan.io#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Etherscan\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Etherscan","nav":{"global":null,"tabs":[{"tab":"Overview","groups":[{"group":"Get Started","pages":[{"title":"Welcome to the Etherscan API","sidebarTitle":"Introduction","mode":"wide","href":"/introduction"},{"group":"API Basics","expanded":true,"pages":[{"title":"Set Up Your API Key","href":"/set-up-your-api-key"},{"title":"Make Your First Call","href":"/make-your-first-call"},{"title":"Rate Limits","href":"/rate-limits"},{"title":"Common Error Messages","href":"/common-error-messages"},{"title":"API Status","href":"/api-status"}]},{"title":"Supported Chains","mode":"wide","href":"/supported-chains"}]},{"group":"Guides","pages":[{"group":"Contract Verification","root":{"title":"Contract Verification","sidebarTitle":"Contract Verification","href":"/contract-verification"},"pages":[{"title":"Verify with the API","sidebarTitle":"Verify with the API","href":"/contract-verification/verify-with-api"},{"title":"Get Verified Source Code","sidebarTitle":"Get Verified Source Code","href":"/contract-verification/get-source-code"},{"title":"Verify with Foundry","href":"/contract-verification/verify-with-foundry"},{"title":"Verify with Hardhat","href":"/contract-verification/verify-with-hardhat"},{"title":"Verify with Remix","href":"/contract-verification/verify-with-remix"},{"title":"Common Verification Errors","href":"/contract-verification/common-verification-errors"}]},{"group":"Endpoint Showcase","root":{"title":"Endpoint Showcase","mode":"wide","href":"/endpoint-showcase"},"pages":[{"title":"Address Page","sidebarTitle":"Address","mode":"wide","href":"/endpoint-showcase/address"},{"title":"Token Page","sidebarTitle":"Token","mode":"wide","href":"/endpoint-showcase/token"},{"title":"Block Page","sidebarTitle":"Block","mode":"wide","href":"/endpoint-showcase/block"},{"title":"Transaction Page","sidebarTitle":"Transaction","mode":"wide","href":"/endpoint-showcase/transaction"},{"title":"Gas Tracker","sidebarTitle":"Gas Tracker","mode":"wide","href":"/endpoint-showcase/gas-tracker"},{"title":"Contract Page","sidebarTitle":"Contract","mode":"wide","href":"/endpoint-showcase/contract"},{"title":"Charts and Stats","sidebarTitle":"Charts and Stats","mode":"wide","href":"/endpoint-showcase/charts-and-stats"}]},{"group":"Common Use Cases","root":{"title":"Common Use Cases","sidebarTitle":"Common Use Cases","href":"/common-use-cases"},"pages":[{"title":"Wallet and Portfolio","sidebarTitle":"Wallet and Portfolio","href":"/resources/wallet-and-portfolio"},{"title":"Tax and Accounting","sidebarTitle":"Tax and Accounting","href":"/resources/tax-and-accounting"},{"title":"Security and Compliance","sidebarTitle":"Security and Compliance","href":"/resources/security-and-compliance"},{"title":"Onchain Analytics and Research","sidebarTitle":"Onchain Analytics and Research","description":"Build dashboards, research reports, and protocol monitors from entity labels, holder distributions, event logs, and network stats.","href":"/resources/analytics-and-research"}]},{"title":"Best Practices","href":"/resources/best-practices"}]},{"group":"Resources","pages":[{"title":"Contact Us","description":"How to reach Etherscan support, and the official channels the team communicates from.","href":"/resources/contact-us"},{"title":"Useful Links","href":"/resources/useful-links"}]}]},{"tab":"Build with AI","pages":[{"title":"Build with AI","href":"/build-with-ai/introduction"}]},{"tab":"API Endpoints","pages":[{"title":"API Endpoints","href":"/endpoint-overview"}]},{"tab":"Etherscan Metadata","pages":[{"title":"Etherscan Metadata","href":"/metadata/introduction"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog"}]}]},"basePath":"","title":"Best Practices - Etherscan","buildId":"dpl_BLQvU86QFwq3AhPofSTw6q8dGWKm","deploymentId":"dpl_BLQvU86QFwq3AhPofSTw6q8dGWKm","dynamics":[],"chunks":[]}