Yotru

Targeting & ICP

How to Build an ICP for a Direct Mail Campaign

Build a direct-mail ICP by defining which companies are worth the cost of a physical piece before you worry about creative. Start from company-level fit (industry, size, geography, business model), connect that fit to what an account is actually worth, then identify who inside those companies should receive it. The result should be a target list that can grow without getting less accurate as it grows.

Practical guide · Published August 22, 2026 · Written by Zaki Usman

Start with the outcome, not the list

Before writing down any criteria, decide what a successful campaign actually produces: a meeting booked, a demo requested, a quote, a trade show visit, a stalled deal waking back up. The ICP should describe the set of companies where that specific outcome is realistic, not just companies that seem generally similar to your existing customers. A company can look like a great logo fit and still be a poor direct-mail target if there's no clear reason they'd act on a postcard right now.

Company-level fit criteria

Firmographic filters narrow the market down to something workable. The common ones are industry, employee range, revenue band, geography or service territory, business model, and technology stack where that's knowable. None of these are mandatory on every list. The test for whether a criterion belongs is simple: does it have a real, explainable relationship to whether this company would buy, or is it just a filter that happens to be easy to pull from a data source? A geography filter makes obvious sense for a company that only services certain regions. It's dead weight for a company that sells a purely digital product nationwide.

Connect fit to account value

This is the step that's specific to direct mail and easy to skip if you're used to building lists for email, where the marginal cost of one more contact is close to zero. With physical mail, every name on the list costs real money to reach. A company can pass every fit filter and still not be worth mailing if a closed deal there wouldn't be worth much. Conversely, a company that's a slightly imperfect fit but represents a large potential contract can be worth mailing anyway, with more personalization to compensate for the fit gap. Account value is what turns a list of plausible-looking companies into a list you can actually justify spending on.

Map the buying function, not just a title

Once you know which companies belong on the list, figure out who inside them should receive the piece. Job titles vary a lot between companies of different sizes and in different industries: the person who owns a decision at a 50-person company might hold a completely different title than the person who owns the equivalent decision at a 2,000-person company. Function tends to be more stable than title. Ask who actually owns the problem the campaign is addressing, who influences the decision even if they don't own budget, and who controls the budget itself. Those can be three different people, and a strategic account may be worth reaching with more than one of them.

Build tiers instead of one flat list

A single undifferentiated list treats a marginal-fit account the same as your best-fit account, which usually means either overspending on the marginal ones or underspending on the accounts that deserve real investment. Splitting the list into tiers lets the depth of personalization track account value, within a single, consistently-formatted run.

TierTypical profilePersonalization
Tier 1Highest-value accounts within the qualified listCompany- and contact-specific message, sometimes addressed to more than one contact per account
Tier 2Core of the qualified list, clearly fits the ICPCompany-level personalization, standard segment message
Tier 3Broader qualified reach, first-touch motionLighter personalization, consistent creative across the tier

Note that the tiers here change personalization depth, not postcard format. A single production run should stay on one format throughout, so mixing Small, Signature and Jumbo pieces within the same campaign is something we'd generally advise against, particularly on a run under about a thousand pieces, where the setup cost of splitting formats stops making sense. If a tier is genuinely large enough on its own to justify a different format as its own dedicated campaign, that's a separate decision from ICP tiering, and it needs its own scale to justify it.

Because we handle the personalization with variable-data printing, this tiering is mostly a matter of setup within one run, not separate production jobs: more account-specific detail for Tier 1, a consistent design with lighter personalization for Tier 3.

Validate before you scale

Before committing a large budget to an ICP, check it against what you already know: existing customers, current pipeline, deals that have stalled or gone quiet. If the criteria you've written down actually describe your best accounts, that's a reasonable signal the logic holds. If they don't, that's worth noticing before the list gets big, not after. When it's time to scale beyond that, expand by finding more companies that genuinely match the criteria, rather than loosening the criteria themselves just to hit a larger number. There's an exception worth naming here: if the fit criteria are so narrow that the list can't clear the volume a dedicated run needs to make sense in the first place, that's a sign the criteria need to widen before the campaign launches, not after.

A worked example

Here's a hypothetical to show how this comes together at a scale that actually justifies a dedicated print run. A company selling fleet management software defines its ICP as logistics and field-service companies with 50 to 500 vehicles, across the regions where fuel and driver costs are rising fastest. That fit criteria produces a qualified universe of around 4,500 companies, large enough to run as one consistently-formatted Signature campaign rather than something that needs to be split across formats to matter.

Within that list, roughly 900 companies have fleets large enough that the software's savings would be substantial, so those get the deepest treatment: addressed to both the Operations lead and the CFO, with messaging referencing their specific fleet-size band. The remaining 3,600 or so get a lighter version, addressed to the Operations lead only, with a more general version of the same message. Same format, same production run, same underlying ICP. What changes is how much personalization effort goes into each account, not the size of the postcard.

Frequently asked questions

The main difference is cost per contact. A general ICP can afford to be somewhat loose because reaching an extra contact by email is nearly free. A direct-mail ICP has to weigh account value more heavily, because every name on the list has a real production and postage cost attached.

As few as actually explain buying behavior. Adding criteria because the data is available, rather than because it predicts fit, tends to make the list harder to reason about without making it more accurate.

Function generally holds up better across companies of different sizes, since the same title can mean very different levels of authority depending on the organization.

We generally recommend planning around a run in the low thousands rather than a few hundred. Below roughly a thousand pieces, the setup cost of a dedicated, well-personalized run gets harder to justify against the size of the list, even when the fit criteria are good.

Widen the fit criteria before shrinking the run. That usually means loosening a geography or employee-range filter slightly, or including an adjacent industry that shares the same underlying need, rather than running a very small, tightly-qualified list as its own campaign.

Related topics

Work with Yotru

How Yotru helps you build or refine your ICP

Yotru works with you to turn firmographic fit criteria and account value into an actual list and, where useful, a tiered structure that lets personalization depth track how much each account is worth. If your fit criteria produce a list too small to run properly, we'll help you widen the right filter rather than mail a campaign undersized for a real production run. .

Book strategy call