[Cotlet](https://cotlet.dev/index.md) · [Integrations](https://cotlet.dev/integrations.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Use cases](https://cotlet.dev/use-cases.md) · [Security](https://cotlet.dev/security.md) · [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md) · [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [Contact](https://cotlet.dev/contact.md) · [Pricing](https://cotlet.dev/pricing.md) · [Sign up](https://cotlet.dev/signup)

# Weekly BrightLocal rank drop report for every location

> Find which locations lost Google rankings since the last Local Rank Tracker run and the keywords that dropped most, every Monday.

Source: https://cotlet.dev/integrations/brightlocal-api-mcp-server/weekly-rank-drop-report

A weekly Local Rank Tracker run finishes for 40 locations overnight, and on Monday someone opens report after report to find the three that slipped.

Cotlet does it in your own BrightLocal account with list\_rank\_tracker\_reports and get\_rank\_tracker\_report, called by your AI agent, an n8n workflow or a script.

[Sign up free](https://cotlet.dev/app/signup?app=brightlocal) [All BrightLocal tools](https://cotlet.dev/integrations/brightlocal-api-mcp-server.md)

Hosted · nothing to install or maintain

## Can BrightLocal do this on its own?

BrightLocal's Management APIs return Local Rank Tracker report data, and the read-only MCP server answers questions about it for accounts on the Grow plan with Labs access (checked 23 Oct 2026). Neither sends you a weekly list of what dropped. Someone has to ask, read and compare.

## How you do it in BrightLocal today

1. The account owner opens Local SEO Tools > Rank Tracker and sees the overview of all Local Rank Tracker reports.
2. For each location, they open the report and read the Average Google Position chart, which shows the change against the previous report run.
3. They scroll to Keyword and Positional Movement to see how many keywords went up and down, and to the Positions table for the keywords that moved.
4. They repeat this for every location and copy the findings into a client email or a sheet.
5. Reports run on a weekly or monthly schedule set under General Settings, so a location on a monthly schedule only changes once a month and is easy to read as stale.

## How to weekly BrightLocal rank drop report for every location

Prompt

```
Every Monday, check all Local Rank Tracker reports for locations whose average Google position got worse since the last run, and list the keywords that dropped the most.
```

1. 01  
### List the reports  
list\_rank\_tracker\_reports returns every report with its location, run date and average Google position. The agent skips reports whose latest run is older than the schedule says, and names them in the result, so a stale report is not read as a flat one.
2. 02  
### Compare to the previous run  
For each report the agent calls get\_rank\_tracker\_report, which returns the current and the previous average position and the keyword table. A location counts as slipped when its average position number went up, because a higher number is a worse position.
3. 03  
### Tell keyword from positional movement  
The agent reads Keyword Change and Positional Change separately. Keyword Change counts keywords that moved up against keywords that moved down; Positional Change adds up the places gained and lost. One keyword falling five places can hide behind a flat Keyword Change.
4. 04  
### Rank the worst keywords  
Within each slipped location the agent sorts keywords by places lost and keeps the top three, with old and new position.
5. 05  
### Report, change nothing  
Both tools only read. The agent returns one list ordered by places lost and leaves keywords and schedules alone.

### What you get back

Example data

```
Locations with a worse average Google position than last run: 3 of 40
Harbor Dental, Austin: 5.25 to 6.5
- emergency dentist austin: 4 to 9 (lost 5 places)
- dentist austin: 2 to 3 (lost 1 place)
Skipped, last run older than schedule: 1 (Summit Ortho)
```

### Other ways to ask

- Include the Local Pack coverage drop for locations that fell out of the pack.
- Only report locations in the Texas client group.
- Send me the biggest winners too, with keywords that gained three places or more.

## What BrightLocal allows, and what to know first

- Local Rank Tracker reports run weekly or monthly, on a day, time and timezone you choose under General Settings, or ad hoc.
- An ad hoc report runs once and does not update until someone runs it again.
- Average Google Position is the average position of all ranking keywords across Google organic results on desktop and mobile and Google local results.
- Keyword Change is keywords moved up minus keywords moved down; Positional Change is places gained minus places lost.

Every tool here only reads, so it can run weekly from n8n, Make, Zapier or cron without waiting for your OK.

Sources: [BrightLocal Help: How do I understand a Local Rank Tracker report?](https://help.brightlocal.com/hc/en-us/articles/360034975133-How-do-I-understand-a-Local-Rank-Tracker-report) · [BrightLocal Help: How do I schedule a Local Rank Tracker report to run every week or month?](https://help.brightlocal.com/hc/en-us/articles/12626698652690-How-do-I-schedule-a-Local-Rank-Tracker-report-to-run-every-week-or-month) · [BrightLocal Help: Does BrightLocal provide APIs?](https://help.brightlocal.com/hc/en-us/articles/203649917-Does-BrightLocal-provide-APIs)

## Call get\_rank\_tracker\_report from a script

curl

```
curl https://cotlet.dev/api/v1/brightlocal/reports/lrt_4821/rank-tracker-report \
  -H "Authorization: Bearer $COTLET_API_KEY"
```

Example response

```
{
"report_id": "lrt_4821",
"location": "Harbor Dental, Austin",
"run_date": "2026-10-19",
"previous_run_date": "2026-10-12",
"average_google_position": 6.5,
"previous_average_google_position": 5.25,
"keyword_change": -1,
"positional_change": -5,
"keywords": [
{
"keyword": "dentist austin",
"position": 3,
"previous_position": 2
},
{
"keyword": "emergency dentist austin",
"position": 9,
"previous_position": 4
},
{
"keyword": "teeth whitening austin",
"position": 7,
"previous_position": 8
},
{
"keyword": "dental implants near me",
"position": 7,
"previous_position": 7
}
]
}
```

MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is brightlocal\_read → get\_rank\_tracker\_report. Example data.

[Schedule it in n8n, Make, Zapier or cron](https://cotlet.dev/integrations/brightlocal-api-mcp-server.md#automations)

## BrightLocal tools this automation uses

__Cotlet BrightLocal tools used to weekly BrightLocal rank drop report for every location__
| Tool | Parameters |
| ---------------------------- | -------------------- |
| list\_rank\_tracker\_reports | location\_id, cursor |
| get\_rank\_tracker\_report | report\_id |

[All 11 BrightLocal tools with descriptions](https://cotlet.dev/integrations/brightlocal-api-mcp-server.md#tools)

## Frequently asked questions

### Is it safe to connect BrightLocal to Cotlet?

Yes. You sign in to BrightLocal yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get BrightLocal once you enable it, every background request is listed, and the browser profile is stored encrypted with AES-256-GCM, the cipher 1Password uses for its vaults. The AI model never sees a login, posts and messages wait for your OK, and Disable for agents cuts access in one click. Independent scanners grade cotlet.dev A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory; live results are on https://cotlet.dev/security.

## More BrightLocal automations

- [Reply to new Google reviews in BrightLocal](https://cotlet.dev/integrations/brightlocal-api-mcp-server/reply-to-google-reviews.md)
- [Bulk update BrightLocal Local Rank Tracker keywords](https://cotlet.dev/integrations/brightlocal-api-mcp-server/bulk-update-rank-tracker-keywords.md)
- [BrightLocal API and MCP server: every tool](https://cotlet.dev/integrations/brightlocal-api-mcp-server.md)
- [All use cases](https://cotlet.dev/use-cases.md)

## Give your agent access to BrightLocal.

Free 7-day trial with 2,000 credits, no card needed. Cotlet is independent and not affiliated with BrightLocal.

[Sign up free](https://cotlet.dev/app/signup?app=brightlocal)

---

Give your AI agents your signed-in browser.

**Product:** [Integrations](https://cotlet.dev/integrations.md) · [Use cases](https://cotlet.dev/use-cases.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Pricing](https://cotlet.dev/pricing.md) · [Security](https://cotlet.dev/security.md)

**Resources:** [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [GitHub](https://github.com/cotletdev/cotlet)

**Solutions:** [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md)

**Company:** [About](https://cotlet.dev/about.md) · [AI info: company facts](https://cotlet.dev/ai-info.md) · [Contact](https://cotlet.dev/contact.md)

**Legal:** [Terms of service](https://cotlet.dev/terms) · [Privacy policy](https://cotlet.dev/privacy) · [Refund policy](https://cotlet.dev/refunds) · [Acceptable use](https://cotlet.dev/acceptable-use) · [Cookie policy](https://cotlet.dev/cookies) · [DPA](https://cotlet.dev/dpa) · [Subprocessors](https://cotlet.dev/subprocessors)

**Elsewhere:** [Status page](https://status.cotlet.dev) · [Cotlet on GitHub](https://github.com/cotletdev) · [Cotlet on X](https://x.com/cotletdev) · [Cotlet on LinkedIn](https://www.linkedin.com/company/cotletdev) · [Cotlet on Product Hunt](https://www.producthunt.com/products/cotlet) · [Cotlet on Crunchbase](https://www.crunchbase.com/organization/cotlet) · [Cotlet on SaaSHub](https://www.saashub.com/cotlet)

Cotlet.dev is built by Bart Krawczyk and Jake Slugocki, the founders of Take Group sp. z o.o., ul. Wincentego Janasa 4, 40-855 Katowice, Poland. KRS 0000871398, NIP 6342984273, VAT EU: PL6342984273. [About us](https://cotlet.dev/about.md)

Cotlet is an independent service. It is not affiliated with, endorsed by or sponsored by any of the products listed on this site. Product names are trademarks of their respective owners.
