# Daily Google Maps prospects into Instantly cold outreach

> Every weekday at 7am ET, pull fresh local prospects from Google Maps, skip anyone already in a sequence, and load 50 AI-personalized leads into your Instantly campaign.

- Workflow type: agent
- Services: Local Business Data, Instantly
- Categories: Sales, Marketing
- Published: 2026-06-26

## What it does

- Pulls a fresh batch of local prospects from Google Maps for each city and category you configure, surfacing only businesses that have a deliverable email on file.
- Filters out low-quality prospects automatically. Anything under 10 reviews, rated below 3.8, or missing a website gets dropped before it ever reaches your campaign.
- Checks Instantly first to skip anyone already in an active sequence so you do not double-email the same business.
- Writes a one-sentence personalized opener for each prospect that references something specific from their Google Maps profile, then loads up to 50 ready-to-send leads into your campaign every morning.

## What you'll need

- An Instantly account on the Growth plan or higher with an API key, plus the campaign you want new leads dropped into.
- A RapidAPI account subscribed to the Local Business Data API for Google Maps lookups.
- Your target list. The cities and business categories you want to prospect each day, for example med spas in Austin or HVAC contractors in Phoenix.
- An Instantly email sequence that uses the personalization variable, so the AI-written opener actually shows up in the email body.

## Prompt

Build me an agent workflow that runs on a cron schedule, every weekday at 7am America/New_York, and feeds my Instantly cold outreach campaign with a fresh batch of AI-personalized local prospects pulled from Google Maps. The trigger is cron because Local Business Data does not have a poll trigger.

Inputs I will configure on the workflow: (1) a list of target searches, each one a free-text query like "med spas in Austin" or "HVAC contractors in Phoenix"; (2) the Instantly campaign id I want new leads added to; (3) the personalization variable name my Instantly email sequence drops in, defaulting to personalization; (4) quality filters with sensible defaults: minimum 10 reviews, minimum 3.8 rating, website required; (5) a per-run cap on total leads added, defaulting to 50.

On each run, the agent should rotate through the configured target searches and, for each one, call Local Business Data Search with extract_emails_and_contacts set to true so only businesses with a deliverable email come back. Skip any result without an email. Apply the quality filters (reviews, rating, website) to drop weak prospects before spending more credits.

For the prospects that survive the filters, call Local Business Data Business Details on the top candidates from each search to pull richer signals: full rating, review count, recent owner posts, website, hours, and any contact info. Use Business Details (not Business Details Plus) to keep credit costs low unless I ask otherwise.

Before adding any prospect to the campaign, call Instantly Search Campaigns by Lead Email for that prospect's email. If the email is already in any active Instantly campaign, skip the prospect. This is the dedupe step and it is non-negotiable.

For each surviving prospect, draft a single sentence personalized opener that references something specific and verifiable from the Google Maps profile: a recurring theme in their recent 5-star reviews, a service category they highlight, a quirk in their opening hours, a recent owner post, or a website detail. The opener should be plain, human, and specific. No emojis, no hype, no em dashes.

Finally, push the qualified and deduped batch into Instantly using Add Leads in Bulk against the campaign id I configured. Map standard fields (email, company_name, website, phone if available, city) and put the personalized opener into a custom variable matching the variable name I configured (default personalization) so my email template can drop it in with {{personalization}}. Respect the per-run cap (default 50).

At the end of each run, post a short summary I can read at a glance: how many prospects were searched, how many were dropped by the quality filters, how many were skipped as already-in-sequence, and how many were added to the campaign. If zero leads were added, say why so I can adjust filters or targets.

Constraints: never exceed the per-run cap, never re-add a prospect already in an active Instantly campaign, never add a prospect that fails the quality filters, and never invent details in the personalization sentence. If you cannot find a specific detail to reference, fall back to a clean opener that mentions only the business category and city.

## How to customize

- Change the schedule. The default is every weekday at 7am ET, but you can run it twice a day, only on Mondays, or on any cadence you like.
- Adjust the quality filters. Tighten or relax the minimum review count, star rating, and website requirement to match your ideal customer profile.
- Swap the personalization angle. Tell the agent to reference recent owner posts, review themes, missing websites, or hours quirks depending on what your sequence is built around.
- Tune the batch size. The default caps each run at 50 leads to protect your sending reputation and API credits, but you can raise or lower it.

## FAQ

### Will this work if my Instantly sequence does not use personalization variables?

It will still load leads, but the AI-written opener will not appear in the email body. To get the personalization benefit, add a variable like {{personalization}} to the first line of your sequence and the workflow will fill it in for every lead.

### How does it avoid emailing the same business twice?

Before every lead is added, the workflow checks Instantly to see if that email is already in an active campaign. If it finds a match, the prospect is skipped and never loaded.

### Can I prospect multiple cities and categories at once?

Yes. List as many city plus category combinations as you want, for example med spas in Austin, HVAC in Phoenix, dentists in Miami. The agent rotates through them each run.

### What stops me from blowing through my Google Maps API credits?

The workflow caps each run at 50 leads by default and only pulls deeper business details on prospects that already cleared the quality filters. You can lower the cap further in the prompt.

### Do I need a separate email finder tool?

No. The Google Maps lookup is configured to extract emails directly from each business listing, so prospects with no public email are filtered out before they reach Instantly.

Use this prompt in General Input: https://www.generalinput.com/prompts/daily-google-maps-prospects-into-instantly-cold-outreach