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

# Get Keyword Rankings

> Get Google's top organic results (SERP) for keywords — which domains and URLs rank at which position

Get Google's top organic results (SERP) for keywords — which domains and URLs rank at which position. Use to check rankings/positions for any keyword, including a specific domain's position. Semrush requires a Markifact connection using an API key from a Semrush Business or Enterprise subscription.

|                      |                                |
| -------------------- | ------------------------------ |
| **App**              | SEMrush                        |
| **Operation ID**     | `semrush_get_keyword_rankings` |
| **Type**             | Action                         |
| **Connection**       | `semrush` (required)           |
| **Credits per run**  | Free                           |
| **Agent / MCP tool** | Yes                            |

## Inputs

| Field            | Type                                | Required | Default   | Description                                                                                                                                                           |
| ---------------- | ----------------------------------- | -------- | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `keywords`       | array of string or string           | Yes      | -         | Keywords to fetch Google top-100 organic results for. Accepts a list or a newline/comma-separated string. One SERP is fetched per keyword.                            |
| `database`       | string                              | No       | `us`      | Regional database (country code). E.g. us, uk, ca, au, de, fr, es, it, br. Defaults to 'us'.                                                                          |
| `export_columns` | array of string or SelectableOption | No       | -         | List of columns to return. Available: Po (position), Pt (position type), Dn (domain), Ur (URL), Fk (keyword SERP features), Fp (SERP features the result appears in). |
| `positions_type` | string or SelectItem                | No       | `organic` | 'organic' returns traditional organic positions only; 'all' also includes SERP features as positions.                                                                 |
| `display_date`   | string                              | No       | -         | Historical SERP date in YYYYMM15 format (e.g. 20240115). Leave empty for current data. Historical requests cost 5x more API units.                                    |
| `limit`          | integer                             | No       | -         | Maximum number of results per keyword (top N positions).                                                                                                              |

### SelectItem

| Field   | Type   | Required | Default | Description                                                                                          |
| ------- | ------ | -------- | ------- | ---------------------------------------------------------------------------------------------------- |
| `value` | string | Yes      | -       | The value of the selectable item.                                                                    |
| `label` | string | Yes      | -       | The label of the selectable item, used for display purposes. If not provided, defaults to the value. |

### SelectableOption

| Field   | Type   | Required | Default | Description |
| ------- | ------ | -------- | ------- | ----------- |
| `value` | string | Yes      | -       |             |
| `label` | string | Yes      | -       |             |

## Output

**Type**: `List[Dict]`

Returns one row per ranking result per keyword with: date, keyword, position, domain, url.

**Fields**: `date`, `keyword`, `position`, `domain`, `url`

**Example**:

```json theme={"dark"}
[
  {
    "date": "2026-06-09",
    "keyword": "seo tools",
    "position": 1,
    "domain": "semrush.com",
    "url": "https://www.semrush.com/"
  }
]
```
