Categoría: Python & Data

Pipelines, automatización y análisis de datos

  • Ahrefs API for all plans: What Can You Actually Do on a Standard Plan? A Hands-On Test

    Published on LinkedIn — March 2026

    Ahrefs quietly opened API access to all paid plans in 2026. We ran 80+ real API requests on a Standard plan ($199/month) to find out what you can actually extract, what the limits are, and whether it replaces the manual export workflow. Here is what we found.

    Ahrefs is rocking SEO industry again. Every Lite, Standard, and Advanced subscriber now has API access with a monthly allocation of API units. But the documentation is sparse on what that actually means in practice: how many sites can you audit? Can you do a full keyword export? What are the real costs?

    We spent a day running real requests against the API on a Standard plan, measuring unit consumption, testing pagination workarounds, and pushing the limits. This is the honest report.

    Methodology

    All data in this article comes from real API requests made on March 15-16, 2026, using a Standard plan subscription. Unit consumption was measured by querying the free subscription-info/limits-and-usage endpoint before and after batches of requests.

    Example sites used in testing: NerdWallet.com (DR 90, 649K organic keywords), Zapier.com (DR 91, 123K organic keywords), and Shopify.com (DR 96, 183K organic keywords). These were chosen to represent different scales of site complexity.

    What Does the Standard Plan Actually Include?

    According to the current plan, Ahrefs Standard plan includes 150,000 API units per month, a rate limit of 60 requests per minute, and a hard cap of 25 rows per request. There is no way to purchase additional units outside the Enterprise tier.

    The first thing we did was hit the subscription endpoint (which is free and does not consume units).

    Two things stand out. First, the 25-row limit per request was a hard constraint. Request 100 rows and you still get 25. Second, there was no offset or cursor-based pagination built into the API.

    Key takeaway: On Standard, when we exhausted our 150,000 units, the API stops working. It does not charge overages. This is different from Enterprise, where overages are billed automatically on a pay-as-you-go basis.

    How Does Authentication Work?

    Authentication uses a Bearer token in the Authorization header. Create the key in Account Settings > API Keys. Only workspace owners and admins can create keys.

    The base URL for all endpoints is https://api.ahrefs.com/v3/. Every request requires two headers: Authorization: Bearer YOUR_API_KEY and Accept: application/json.

    A basic request to get Domain Rating:

    curl -s "https://api.ahrefs.com/v3/site-explorer/domain-rating?target=nerdwallet.com&date=2026-03-15" \
      -H "Authorization: Bearer YOUR_KEY" \
      -H "Accept: application/json"

    Response:

    { "domain_rating": 90.0, "ahrefs_rank": 1450 }

    What Endpoints Are Available?

    The API exposes 40+ endpoints across Site Explorer, Keywords Explorer, Rank Tracker, Site Audit, Brand Radar, and Batch Analysis. Not all of them consume units: Rank Tracker, Management, Web Analytics, and Public endpoints are completely free.

    The free endpoints are genuinely useful. Rank Tracker data, project management, and Web Analytics cost zero units.

    How Does the Select Parameter Work?

    Every list endpoint requires a select parameter that specifies which columns you want in the response. This is not optional.

    This is actually a useful discovery mechanism. Send a request with select=INVALID and the error message gives you the complete list of available fields.

    For organic-keywords, there are 35 available columns: keyword, best_position, volume, sum_traffic, best_position_url, keyword_difficulty, cpc, serp_features, intents, and more.

    For all-backlinks, there are 60+ columns including url_from, url_to, anchor, domain_rating_source, is_dofollow, traffic, first_seen, is_spam, link_type, and more.

    Key takeaway: The number of selected fields affects unit consumption. Requesting 3 fields costs less than requesting 15. Choose only the fields you need.

    Can You Export More Than 25 Rows? The Pagination Workaround

    The Ahrefs API on Standard limits every request to 25 rows and provides no built-in pagination. But we discovered that the where filter parameter can be used to simulate pagination, enabling full dataset exports.

    This was the biggest finding of our testing. The official documentation does not describe pagination for list endpoints. There is no offset, no cursor, no page parameter. We tested all of them; none work.

    However, the API supports a where parameter with JSON filter syntax:

    {"field": "sum_traffic", "is": ["lt", 482]}

    The strategy for full exports:

    1. Request the first 25 rows ordered by your metric (e.g., sum_traffic descending).
    2. Note the minimum value in the last row (e.g., sum_traffic = 482).
    3. Send the next request with a where filter: sum_traffic < 482.
    4. Repeat until the API returns fewer than 25 rows.

    Real-world test: exporting all pages with traffic

    We ran this against a mid-size US e-commerce site (approximately 700 pages with organic traffic, 12,000+ organic keywords).

    Results: 27 requests to get the full dataset. At ~225 units per request, that is roughly 4% of the monthly allocation for a complete top-pages export of a mid-size site.

    How Much Does Each Request Actually Cost?

    Based on 80+ requests across all endpoint types, the average cost is approximately 50-225 API units per request, depending on the number of rows and fields selected. Summary endpoints (Domain Rating, Backlinks Stats) cost the minimum of 50 units. List endpoints with 25 rows cost approximately 225 units.

    The most reliable measurement came from the pagination test: 27 sequential requests consuming 6,115 units total, or 226 units per request of 25 rows with 6 fields.

    How Many Sites Can You Audit Per Month?

    On the Standard plan with 150,000 monthly units, you can run approximately 5 full site audits, 16 backlink exports, or 3,000 individual keyword lookups per month.

    Scenario 1: Full site audit

    A full audit includes Domain Rating, backlinks stats, organic metrics, a complete top-pages export, complete organic keywords, 500 backlinks, 250 referring domains, and organic competitors. For a mid-size site (~700 pages, ~1,800 keywords, ~500 backlinks): ~5 full site audits per month on the Standard plan.

    Scenario 2: Competitive monitoring (summary metrics only)

    If you only need high-level metrics (Domain Rating, organic traffic, total backlinks) for competitive tracking, each site costs approximately 150 units for 3 summary requests. Result: ~1,000 sites per month for summary metrics only.

    Scenario 3: Keywords Explorer lookups

    Individual keyword lookups (volume, difficulty, CPC, traffic potential) cost approximately 50 units each. Result: ~3,000 individual keyword lookups per month.

    What Works Well on the Standard Plan

    1. Summary metrics at scale

    Domain Rating, backlinks stats, and organic metrics are single-row responses at the minimum cost (50 units). You can pull these for 1,000 domains per month. Excellent for building competitive dashboards.

    2. Top-25 quick views

    A single request gives you the top 25 pages by traffic, top 25 keywords, top 25 backlinks. One request, 225 units, done.

    3. Full exports of small-to-mid sites

    Sites with fewer than 2,000 organic keywords and ~700 pages can be fully exported within a single audit budget of ~30,000 units.

    4. Rank Tracker data for free

    If you already have Rank Tracker projects in Ahrefs, you can pull all that data via the API at zero cost.

    5. Automated monitoring pipelines

    You can build a daily monitoring script that tracks DR, organic traffic, and backlink counts across 30+ competitor domains for under 5,000 units/month.

    What Does Not Work Well

    1. Large site exports

    Shopify.com has 183,000+ organic keywords. At 25 rows per request, that requires 7,320 batches and approximately 1.6 million units. More than 10x the monthly allocation.

    2. No built-in pagination

    The where-filter workaround works, but it is a hack. A proper cursor or offset parameter would be significantly simpler.

    3. Cannot purchase additional units

    On Lite, Standard, and Advanced plans, the unit allocation is fixed. No way to buy more mid-month.

    4. 25-row limit is restrictive for automation

    Enterprise plans get 100 rows per request. The 4x difference means an export that takes 27 requests on Standard would take 7 on Enterprise.

    5. Keywords Explorer requires specific input

    Each keyword is a separate API call at ~50 units. Analyzing 1,000 keywords costs ~50,000 units.

    Five Practical Use Cases

    1. Weekly competitor dashboard

    Track 20 competitors on DR, organic traffic, and backlink count. Monthly cost: ~12,000 units (8% of budget).

    2. New content performance tracker

    After publishing new pages, monitor what queries each page is ranking for. 50 new pages weekly: ~11,250 units/week.

    3. Backlink quality audit for outreach

    Pull top 500 backlinks for a target site (20 requests). Cost: ~4,500 units per site. Run for 10 prospects: ~45,000 units.

    4. Client reporting automation

    For each client site, pull DR, organic traffic trend, top 25 keywords, top 25 pages. Cost: ~550 units per client. Handle 50 clients: ~27,500 units/month.

    5. SERP overlap and competitor keyword analysis

    Use organic-competitors to find which domains share keywords. One competitor analysis: ~450 units.

    Seven Tips for Maximizing Your API Units

    1. Use the subscription endpoint before every batch job. It is free.
    2. Select only the fields you need. Fewer fields = lower unit cost.
    3. Use the free endpoints first.
    4. Set a unit limit on your API key.
    5. Cache responses. Domain Rating does not change daily.
    6. For competitive monitoring, summary endpoints are enough.
    7. Combine with other data sources.

    The Verdict

    The Ahrefs API on the Standard plan is genuinely useful for automated competitive monitoring, client reporting, and small-to-mid site audits. It is not a replacement for the UI when you need full exports of large sites.

    The 150,000 monthly unit allocation sounds generous until you start exporting full datasets. Summary metrics are cheap (50 units). Full exports are not. The key is knowing when to use the API versus when to use the UI.

    Use the API when:

    • You need the same data pulled automatically on a schedule
    • You are monitoring many domains at a summary level
    • You are building dashboards or feeding data into other tools
    • You are working with small-to-mid sites (under 3,000 keywords)
    • You need Rank Tracker data programmatically (free)

    Use the UI when:

    • You need a full export of 10,000+ keywords or backlinks
    • You are doing a one-time deep analysis
    • You need data that exceeds your monthly unit budget

    FAQ

    Q: Is the Ahrefs API really available on all plans now?
    A: Yes. As of late 2025, Lite, Standard, and Advanced plans all have API access.

    Q: What happens when I run out of units?
    A: On Standard, the API stops responding to paid endpoints. No overages.

    Q: Can I use the API with Python, JavaScript, or other languages?
    A: Yes. Standard REST API that returns JSON.

    Q: Does the where filter work on all endpoints?
    A: Not all. List endpoints like top-pages, organic-keywords, all-backlinks do. Summary endpoints do not.

    Q: How do I find available columns for an endpoint?
    A: Send a request with select=INVALID. The error lists all columns.

    Q: Can I pull historical data?
    A: Some endpoints support historical data (Domain Rating history, Metrics history, etc).

    Q: Is MCP access included?
    A: Yes. Ahrefs supports MCP integration. MCP requests consume the same API units.

    Q: What is the rate limit?
    A: 60 requests per minute by default.