---
title: "SEMrush"
slug: "semrush"
description: "Automate data extraction from SEMrush API with Dataddo. Sync data regularly. All available fields from the API. Check API unit balance & troubleshoot errors."
updated: 2026-03-18T19:40:52Z
published: 2026-03-18T19:40:52Z
---

> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dataddo.com/llms.txt
> Use this file to discover all available pages before exploring further.

# SEMrush

**SEMrush** is an all-in-one digital marketing platform that provides tools for keyword research, competitor analysis, SEO optimization, and advertising strategy. It helps businesses improve their online visibility and performance by offering insights into organic and paid search, content creation, and social media marketing.

Refer to our website for [the list of metrics and attributes available in Dataddo](https://www.dataddo.com/connector/semrush).

Refer to SEMrush's official documentation to see [all available endpoints from the SEMrush API](https://developer.semrush.com/api/v3/analytics/basic-docs/).

## Authorize Connection to SEMrush

### In SEMrush

To authorize your SEMrush account, you will need **your SEMrush API key** (= API token).

To obtain your API key, you need to subscribe to a paid plan. Once you do, the API key will be sent to you via a SEMrush customer support specialist.

### In Dataddo

1. On the **Authorizers** page, click on [Authorize New Service](https://app.dataddo.com/service/new) and select SEMrush.
2. Fill in the **SEMrush API key** (available only to business plans).
3. Rename your ***authorizer*** for easier identification and click on **Save**.

## How to Create a SEMrush Data Source

1. On the **Sources** page, click on the [**Create Source**](https://app.dataddo.com/sources/new) button.
2. Select the connector from the list and name your ***data source***.
3. On the **Dataset** step, select your **dataset**.
          **DATADDO TIP**

          

If you're unsure which dataset to select, use the search bar to look for datasets with the desired attributes or metrics.
4. On the **Account** step select your ***authorizer*** from the drop-down menu.
          **Didn't find your authorizer?**

          

Click on **Add new Account** at the bottom of the drop-down and follow the on-screen prompts. You can also go to the **Authorizers** tab and click on [**Add New Service**](https://app.dataddo.com/service/new).
5. On the **Attributes and Metrics** step, select the **metrics and attributes** you want to extract.  

![Create a source using a custom-schema connector.](https://cdn.document360.io/084ed225-3f99-4644-a2da-39ca0cd5ef45/Images/Documentation/Create%20Source%20-%20Custom-Schema%20Connector.png)
6. On the **Metadata** step, select which [**metadata fields**](/docs/metadata-inclusion) such as extraction time to add to your data.
7. On the **Snapshot** step:
  1. Configure your [**sync frequency**](/docs/extraction#extraction-frequency) or click **Show advanced settings** to set the exact synchronization time.
  2. [Optional] Enable the **Allow Empty Data Extractions** toggle to allow the extraction when no data is available.
8. In the top-right corner, click **Test Data** button to preview extracted data. **Adjust the date range** for a more specific time frame.
9. Click on **Save** and **congratulations, your new data source is ready!**

---

## Limitations

### Number of Rows

Under normal circumstances, the SEMrush API sets a hard limit on the total number of rows that can be extracted per call.

Check your limits in your SEMrush account under [Subscription](https://www.semrush.com/accounts/subscription-info/).

## Troubleshooting

### Data Preview Unavailable

No data preview when you click on **Test Data** might be caused by an issue with your ***source*** configuration. The most common causes are:

- **Date range**: Try a smaller date range. You can load the rest of your data afterward via [manual data load](https://docs.dataddo.com/docs/data-backfilling).
- **Insufficient permissions**: Please make sure your authorized account has at least admin-level permissions.

#### Troubleshooting - API unit balance

**ERROR MESSAGE** `ERROR 132: API UNITS BALANCE IS ZERO`

These issues are caused by insufficient API units in your SEMrush account. To make more queries, purchase more API units or upgrade your SEMrush plan.

You can check your API limit balance in your SEMrush account.

## Related Articles

Now that you have successfully created a ***data source***, see how you can connect your data to a dashboarding app or a data storage.

**Sending Data to Dashboarding Apps**

- [Simple Data Integration to Dashboards](https://docs.dataddo.com/docs/simple-data-integration-to-dashboards)
- [Data Backfilling to Dashboarding Apps](https://docs.dataddo.com/docs/data-backfilling-to-dashboarding-apps)

**Sending Data to Data Storages**

- [Batch Ingestion to Data Warehouses](https://docs.dataddo.com/docs/ingestion-to-data-warehouses)
- [Data Backfilling to Storages](https://docs.dataddo.com/docs/data-backfilling-to-storages)

**Other Resources**

- [Troubleshooting](https://docs.dataddo.com/docs/troubleshooting)
- [Extraction Logs](https://docs.dataddo.com/docs/extraction-logs)
- [Data Duplication](https://docs.dataddo.com/docs/data-duplication)

An API token is a code snippet used to secure API access. It's sent to API servers as identification, confirming whether the user or application has access, and provides both authentication and user/application information to the API server.

Authorizers act as credentials for external services (e.g. Facebook or Google). To enable Dataddo to access and retrieve your data, you need to grant access to accounts that possess admin-level permissions or higher within these services.
