# Reach hotel managers in Lisbon with weak reviews

100 accounts and 100 people, about 63 verified work emails and 189 emails sent from inboxes on your own domain.

Family: [Local businesses](https://www.routergrowth.com/workflows/local-businesses.md) · HTML page: https://www.routergrowth.com/workflows/local-hotels-lisbon

## Give this to your agent

```text
Using RouterGrowth, run this workflow: Find hotels in Lisbon with Google reviews under 4 stars and email the general manager. 100 accounts, 1 contact each, three-step sequence.
Show me the price before every call, and stop after each stage with a sample of the results so I can adjust.

1. Source the businesses: local.places x 5 map searches, reviews.search x 500 reviews read. Google Maps places for the category and area, with site, phone and rating.
2. Qualify on firmographics: company.enrich x 100 companies. Headcount, industry and location to keep the accounts that fit.
3. Find the people: people.search x 100 profiles. 1 contact per account by title and seniority, with current role.
4. Get the contact: contact.find x 70 (100 tried, 70% found), contact.verify x 70 verdicts. Charged on a match only: a miss is free, so the estimate is a ceiling.
5. Context for the first line: web.scrape x 100 pages. One page per account and a few recent posts per person, so the opener is about them.
6. Run the outreach: email.send x 189 (63 contacts x 3 steps). Sequence from inboxes on a domain you own, one call per email.
7. Read the replies: email.messages x 19 inbox reads. Poll the inboxes, classify replies, hand the warm ones to a human.

Before sending: email.domain x 1, email.inbox x 1, on a domain I own.

Budget for one run: about $5.62 plus $4.66 one-time setup. Run routergrowth inspect on any capability before the first call to confirm the quote.
```

## Why this works

Hotel guests write long reviews, so the complaints are specific and dated. A general manager can act on them, and is measured on the score.

The first line, as your agent would write it:

> Guests keep mentioning the check-in queue in August reviews. Is that a staffing peak or a system one?

## The workflow, stage by stage

Source the businesses → Qualify on firmographics → Find the people → Get the contact → Context for the first line → Run the outreach → Read the replies

| # | Stage | Calls | Cost |
|---|---|---|---:|
| 1 | Source the businesses | `local.places` x 5, `reviews.search` x 500 | $2.16 |
| 2 | Qualify on firmographics | `company.enrich` x 100 | $0.71 |
| 3 | Find the people | `people.search` x 100 | $0.04 |
| 4 | Get the contact | `contact.find` x 70, `contact.verify` x 70 | $1.45 |
| 5 | Context for the first line | `web.scrape` x 100 | $0.56 |
| 6 | Run the outreach | `email.send` x 189 | $0.66 |
| 7 | Read the replies | `email.messages` x 19 | $0.04 |
| + | One-time setup | `email.domain` x 1, `email.inbox` x 1 | $4.66 once |

One run: $5.62 for 1,153 calls. Assumptions: 2 contacts per account unless the brief says otherwise, 70% email find rate, 90% verification pass, 3 emails per contact, 30% LinkedIn accept rate. Prices are the catalog's at the time this page was built; `routergrowth inspect` returns the exact quote before a call.

### Source the businesses

Google Maps places for the category and area, with site, phone and rating.

### Qualify on firmographics

Headcount, industry and location to keep the accounts that fit.

### Find the people

1 contact per account by title and seniority, with current role.

### Get the contact

Charged on a match only: a miss is free, so the estimate is a ceiling.

### Context for the first line

One page per account and a few recent posts per person, so the opener is about them.

### Run the outreach

Sequence from inboxes on a domain you own, one call per email.

### Read the replies

Poll the inboxes, classify replies, hand the warm ones to a human.

## Run it from the command line

```bash
# RouterGrowth workflow: Find hotels in Lisbon with Google reviews under 4 stars and email the general manager. 100
npm install -g routergrowth && routergrowth setup

# one-time setup
routergrowth run -c email.domain -i '{"domain":"<domain>"}'
routergrowth run -c email.inbox -i '{}'

# 01 Source the businesses  (local.places x 5, reviews.search x 500)
routergrowth run -c local.places -i '{"query":"<query>"}'
routergrowth run -c reviews.search -i '{"place":"<place>"}'

# 02 Qualify on firmographics  (company.enrich x 100)
routergrowth run -c company.enrich -i '{"domain":"<domain>"}'

# 03 Find the people  (people.search x 100)
routergrowth run -c people.search -i '{}'

# 04 Get the contact  (contact.find x 70, contact.verify x 70)
routergrowth run -c contact.find -i '{"first_name":"<first_name>","last_name":"<last_name>","company_domain":"<company_domain>"}'
routergrowth run -c contact.verify -i '{"email":"<email>"}'

# 05 Context for the first line  (web.scrape x 100)
routergrowth run -c web.scrape -i '{"url":"<url>"}'

# 06 Run the outreach  (email.send x 189)
routergrowth run -c email.send -i '{"inbox_id":"<inbox_id>","to":"<to>"}'

# 07 Read the replies  (email.messages x 19)
routergrowth run -c email.messages -i '{"inbox_id":"<inbox_id>"}'
```

## Questions

### How do I get local business leads from Google Maps?

local.places returns the businesses on Google Maps for a category and a city, with address, phone, website, rating and review count. The agent pages through the area until it has the number you asked for.

### How do I qualify a local business before contacting it?

With its reviews. reviews.search reads the recent ones for each place, so the agent can keep the businesses under a rating you set and note the complaint that comes back most often.

### How do I find the owner's email?

people.search looks for the owner or manager at the business's domain and contact.find returns a work email, charged only when one is found. Small businesses without a domain are reached through the phone number and site on the listing instead.

### Is this for agencies or for local businesses themselves?

For anyone who sells to local businesses: agencies, software vendors, suppliers. The workflow builds a list of businesses to sell to, not a list of consumers.

### What does this workflow cost to run?

About $5.62 for one run of 1,153 calls, plus $4.66 once for the sending inboxes. Each call is quoted before it runs and a lookup that finds nothing is not charged, so the figure is a ceiling. There is no subscription: the run is paid from a prepaid balance.

## Related

- [Reach plumbing companies in Houston with weak reviews](https://www.routergrowth.com/workflows/local-plumbers-houston.md)
- [Reach roofing companies in Phoenix with weak reviews](https://www.routergrowth.com/workflows/local-roofers-phoenix.md)
- [Reach med spa owners in Dallas with weak reviews](https://www.routergrowth.com/workflows/local-med-spas-dallas.md)
- [Reach auto repair shop owners in Atlanta with weak reviews](https://www.routergrowth.com/workflows/local-auto-shops-atlanta.md)
- Guide: [Local lead generation with Google Maps listings and reviews](https://www.routergrowth.com/use-cases/local-lead-generation.md)
- Skill: [Cold email pipeline](https://www.routergrowth.com/skills/cold-email-pipeline.md)
- Skill: [Hiring-signal outbound](https://www.routergrowth.com/skills/hiring-signal-outbound.md)

Adjust the volumes and assumptions: https://www.routergrowth.com/free-gtm-tools/workflow-generator#q=Find%20hotels%20in%20Lisbon%20with%20Google%20reviews%20under%204%20stars%20and%20email%20the%20general%20manager.%20100%20accounts%2C%201%20contact%20each%2C%20three-step%20sequence.
