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

> ## Agent Instructions
> Mailr is a direct-mail marketing platform for US home-services contractors. Each postcard is personalized with an AI-enhanced image of the recipient's own home and a unique QR code that leads to a personalized landing page. Campaigns can target a neighborhood the customer draws on a map, the homes around past jobs they upload or import, or fire automatically from their CRM. Mailr does not mail an uploaded recipient list. When answering questions, prefer the exact steps and UI labels from these docs, and direct users to app.getmailr.com to sign in. For anything involving account-specific data, billing disputes, or mail that appears lost, direct the user to support@getmailr.com.

# Choose your audience

> How Mailr picks who gets a postcard: map draws, radius circles, property filters, past job addresses, and the exclusions that trim your list.

Targeting is step 2 of the campaign wizard, and it's where you decide which households get a card.
Mailr targets geographically and by property details — you draw areas on a map, or you point at
addresses you've already worked at and mail the neighbors around them.

## Draw areas on a map

**Neighborhood Targeting** opens a three-column workspace. On the left is **Step 01 · Target / Draw
where to send** — *"Outline neighborhoods, drop a radius, or combine both."*

* **Starting Address** — an autocomplete field with the placeholder *"Start typing to recenter the
  map"*. It drops a pin and recenters the map; on its own it doesn't select anyone.
* **Free-draw shape** — "Click to outline neighborhoods". Click to place points, then click the first
  point or double-click to close. Right-click undoes your last point.
* **Radius** — "Drop a circle around a point". Click and drag to size it, or click the center then
  the edge.
* **Filter criteria** — "Narrow by home value, year built". Opens the property filter panel.

You can mix any number of shapes and radius circles in one campaign. Each one is listed under
**Selected Areas** as "Shape 1" or "Radius 1" with a color chip, a live count of homes inside it, and
an X to delete it. The map itself has a **Map / Satellite** toggle, with Satellite as the default.

On the right, **Campaign Summary** shows **Estimated Contacts** as a big number with a per-shape bar
— *"We'll mail every home inside the shapes you've drawn."* — plus a **Cost Estimate** at your
current volume rate. As the panel says, *"the exact total is confirmed on the Review step."*

If a single draw covers too much ground, Mailr refuses to count it: *"This area is too large to
estimate in one draw — split it into smaller shapes and try again."*

## Filter by property

Opening **Filter criteria** gives you two filters everywhere:

* **Home value** — a minimum and maximum.
* **Year built** — a minimum and maximum.

A hint pill summarizes your choices, for example "Value $300K–$700K · Built 1980–any". An impossible
range blocks the step with *"Fix the highlighted filter range to continue."*

Below those, **Additional property filters** are data-driven: Mailr shows only the filters that
actually have data inside the areas you drew, and the choices in each one come from that same area.
That means the list is different in different towns, and it's empty until you draw something —
*"Draw an area to see the property filters available there."* If the filters can't load you'll see
*"Couldn't load the filters for this area."* and a **Retry** button.

<Note>
  Only homes with street-level photo coverage can be mailed, because every card is built from a
  picture of that specific house. This is the single most common reason a count comes in lower than
  expected. A larger area or looser filters usually fixes it.
</Note>

Mailr does not offer demographic or consumer-data targeting — no household income, age, or similar.
Targeting is geographic and property-based.

## Seed from your past jobs

**Neighborhood Reactivation** starts from addresses you've already worked at: *"Upload a CSV of past
job addresses. We'll find neighbors around each one (the job addresses are excluded)."*

<Tip>
  Only mailing around one or two recent jobs? You don't need a spreadsheet — a CSV can be a single
  row with one address, or skip the upload entirely and draw a shape around the job with
  Neighborhood Targeting instead.
</Tip>

### Upload a CSV

Drag a file onto the upload area (*"Drag and drop a CSV file, or click to browse"*) or use **Choose
File**, then press **Upload & Geocode**. There's a **Download sample CSV format** link in the app.

The file needs one column of addresses, headed `address` (`Address` and `full_address` also work):

```csv theme={null}
address
123 Main St, Austin, TX 78701
456 Oak Ave, Austin, TX 78702
```

**Limits: 10 MB and 10,000 rows.** Mailr looks up every address to confirm it's real and place it on
the map — you'll see "Geocoding addresses…" while it works. Rows that can't be matched are reported
and skipped: *"N addresses geocoded, M failed."* If nothing matches at all you'll see *"No valid
addresses found. Make sure your CSV has an 'address' column."*

When it's done you get a **"N job addresses ready"** block listing the matched addresses, with a
**Clear & re-upload** link.

### Import from your CRM

Instead of a file, use the **Import past jobs from** block that appears for each connected CRM. Supported
today: HubSpot, Jobber, JobNimbus, Housecall Pro, Leap, Proline, RoofLink, AccuLynx, PaintScout,
BuilderPrime, JobTread, Service Fusion, and GoHighLevel. Each importer offers a source toggle (such
as **Past jobs** or **Clients**) and a "Last completed jobs" count from 1 to 500. An **Updated since**
date narrows the pull to records changed on or after that day.

Every fetched row arrives ticked — *"All are selected — untick any you don't want to mail around."* —
with a **Select all** checkbox and a running count of how many jobs will be imported. If there are more
records than you pulled, **Load more** fetches the next page and adds it to the list below what you
already have. When importing from **Clients**: *"Only contacts with a street address can be imported."*
See [CRM integrations](/integrations/overview).

### Neighbors per job

**Houses per job** sets how many homes Mailr finds around each address. The range is **1 to 500**,
and the default is **50**. The caption shows your running total: *"Total estimated recipients: \~N
(duplicates near overlapping jobs are removed)."*

<Warning>
  **The job addresses themselves are never mailed.** They're excluded from the campaign, and when you
  submit they're added to your suppression list as customers so later campaigns skip them too.
</Warning>

## Who to mail

The **Who to mail** section on the Settings step decides which exclusion lists apply when Mailr finds
neighbors.

| Option                                                   | What it does                                                                                                                                                   |
| -------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Standard (recommended)**                               | "Skips recently mailed homes and recent customers — both age back in after your cooldown windows (set in Settings). Do-not-mail addresses are always skipped." |
| **Skip all customers and previously mailed**             | "Excludes every customer on your list, no matter how old, plus anyone who has already received a postcard within your mail cooldown."                          |
| **OK to re-mail people who already received a postcard** | "Still excludes all existing customers, but ignores the sent history."                                                                                         |
| **Send to everyone**                                     | "No customer or mail-history exclusions. Do-not-mail addresses are still excluded — they are never mailed."                                                    |

**Standard** is the default. **Send to everyone** is the widest audience Mailr will build, and even
then, addresses you've marked **Do Not Contact** are never mailed.

Two cooldown windows drive the **Standard** setting, and you set both under **Settings → Account**:
**Mail cooldown (days)** (default 30) controls how soon an address can be mailed again, and
**Customer cooldown (months)** (default 24) controls how recently-added customers are skipped. See
[Workspace settings](/account/workspace-settings) and
[Opt-outs and suppression](/campaigns/opt-outs-and-suppression).

## Limits and validation

| Thing                            | Value                                |
| -------------------------------- | ------------------------------------ |
| Countries                        | United States only                   |
| Recipients per campaign          | Up to 100,000                        |
| Minimum recipients               | 1                                    |
| Neighbors per job (reactivation) | 1–500, default 50                    |
| Job-address CSV                  | 10 MB, 10,000 rows, `address` column |
| Follow-up drops                  | Up to 12 per campaign                |
| Card size                        | 6 × 9 in, every campaign type        |
| Free preview run                 | Up to 10 cards per run, default 3    |

Go over the recipient cap and the wizard says: *"This selection (N properties) exceeds the 100,000
per-campaign limit. Narrow the area or add filters."* Split a bigger area into separate campaigns.

Within a single campaign, each household is counted once — overlapping shapes or overlapping job
radiuses never produce two cards for the same address.

To mail an exact list of addresses rather than neighbors around them, pick the **Your list** campaign
type — it takes a CSV upload or a pull from any connected CRM, and can print customer names on the
address block. The other campaign types take **job addresses** to mail around, and addresses to
**suppress**.

## When nobody is left

If the selection resolves to zero recipients, Mailr tells you why before anything is created:

* *"No mailable homes were found in this area. Only homes with street-level photo coverage can be
  mailed — try a larger area or looser property filters."*
* *"Found N homes in this area, but every one was filtered out by your 'Who to mail' setting (recent
  customers, recently-mailed homes, and your do-not-mail list). Switch 'Who to mail' to 'Send to
  everyone' to include them, or choose a different area."*
* *"Every home found near your addresses is on your do-not-mail list, so there is no one left to
  mail. Choose a different area, or review your do-not-mail list in Settings."*

<Check>
  On the Review step, the **Suppression list** row shows exactly what was trimmed, for example
  "1,240 homes found · 96 excluded" — so you always see the real number before you submit.
</Check>

## Next steps

<CardGroup cols={2}>
  <Card title="Create a campaign" icon="list-checks" href="/campaigns/create-a-campaign">
    The full four-step wizard, field by field.
  </Card>

  <Card title="Opt-outs and suppression" icon="shield-ban" href="/campaigns/opt-outs-and-suppression">
    Your do-not-mail list and how homeowners remove themselves.
  </Card>

  <Card title="Workspace settings" icon="settings" href="/account/workspace-settings">
    Set your mail cooldown and customer cooldown windows.
  </Card>

  <Card title="Automations" icon="zap" href="/campaigns/automations">
    Target neighbors around every job automatically.
  </Card>
</CardGroup>
