Skip to main content

Introduction

Semrush is an SEO and competitive-intelligence platform covering keyword research, organic rank tracking, paid-search visibility, backlink analysis, and site authority. The connector exposes Semrush’s domain analytics, position tracking, and backlinks surfaces so SEO performance can be visualized alongside paid media and analytics data. Each data source is scoped to a report type chosen when the connection is created — for example organic position tracking, referring domains, or a domain overview. The report type governs which Semrush endpoint family, fields, and default settings apply, and it cannot be changed after creation. Reports are also scoped to a Semrush database — a regional or market index (for example us, uk, de, mobile-us, il-ext) that determines which SERP corpus keyword and domain figures are computed against. Position-tracking report types additionally select a Semrush project (campaign). As an SEO connector, keyword, ranking, and domain data are standardized so widgets can aggregate alongside ad-platform sources without additional configuration. To connect this data source, see How to connect Semrush to Adriel.

Data refresh strategy

Architecture data

Architecture covers the Semrush account → project (campaign) → tracked-domain hierarchy and the catalog of report families. The report type, database, and project are stored at connection time and reused on every query. The following report types are currently available:

Reports data

Report data is refreshed at most once per day per data source. The first dashboard interaction each day triggers a refresh against the Semrush API for the report type, database, project, and date range; the returned rows are stored in a per-data-source cache and reused for the rest of the day. Because each refresh calls the Semrush API, it consumes API units billed to the Semrush subscription that owns the key (see Limitations). Granularity depends on the report family: position-tracking reports provide daily rows, while domain-analytics families (organic, paid, backlinks) are monthly — Semrush figures update at its own crawl cadence rather than on a fixed Adriel schedule.

Architecture levels

Account → Project / Database → Domain / Keyword → Date Position-tracking reports resolve down to the keyword and tracked URL; domain-analytics and backlinks reports resolve to the domain within the selected database.

Metrics

How to read the columnsCode style like organic_traffic is the literal Semrush API field or column name. Italic text describes how a value is produced when it doesn’t map cleanly to a single Semrush field or when it’s computed by Adriel.Data type vocabulary: Number, Currency, Percentage, Ratio, Duration, Date, Text, URL, Array, Boolean.

Keywords & rankings

Available from the position-tracking report types (tracking:tracking_overview_organic, tracking:tracking_position_organic).

Visibility & traffic

Available from the domain-analytics report types (domain_organic, domain_ranks, domain_rank, and the competitor variants). Available from the backlinks report types (backlinks_refdomains, backlinks_competitors, backlinks_ascore_profile).

Breakdowns

How to read the columnsCode style like keyword is the literal Semrush API field name. Italic text describes how a value is produced when it doesn’t map cleanly to a single Semrush field or when it’s produced by Adriel. Which breakdowns are available depends on the report type selected for the data source.

Keywords

Keyword tags duplicate position-tracking rowsIn tracking_position_organic reports, each keyword + URL pair is emitted once per tag assigned to the keyword, and keywords with no tags surface as a single no tag row. Numeric metrics in tracking reports use mean (average) aggregation to prevent inflation from this duplication.

Pages

Domain & database

Time

Time & date grouping

Adriel groups Semrush results into these standard views so they can be reported alongside other connectors; daily grouping is only meaningful for position-tracking reports, since domain-analytics families are monthly at source.

Limitations

Based on the current connector, Semrush has:
  • API units billed to the customer — every refresh calls the Semrush API and consumes API units from the subscription tied to the key (Semrush API — API unit balance). High-frequency dashboards or many viewers can exhaust the monthly unit budget on smaller plans, and unit-exhaustion errors auto-disconnect the data source until more units are purchased.
  • Report type fixed at connection creation — the report type is chosen when the connection is created and governs the endpoint, fields, and defaults for every data source built from it; it cannot be changed afterward.
  • Database (region) is not like-for-like — domain and keyword figures come from a single regional database, and numbers change when the database changes, so results are not directly comparable across databases.
  • Monthly granularity for domain analytics — organic, paid, and backlinks families are returned at monthly granularity (daily granularity is unavailable); position tracking is daily.
  • Position tracking defaults to the last 90 days — when no start date is provided for a tracking report, the connector fetches from 90 days ago.
  • Refresh at most once per day — a data source refreshes on its first use each day and serves cached rows for the remainder of the day; clearing the cache forces a full re-fetch that consumes API units.
  • Null values for missing tracking data — position, average CPC, searches per month, share of voice, and visibility are returned as empty when Semrush reports 0, -, or no data for a given date and URL.
  • A rate limit of 9 requests per second — higher volumes are queued and processed sequentially.
  • Read-only — the connector reads from Semrush and cannot write back.

API references

See also