FEATURE

Every postcard is addressed to one person

Drop a merge field anywhere on the card and it fills in per recipient at print time, from the 12 built-in fields.

The 12 built-in fields

Nine come from the contact, three from your business. Insert them from the editor sidebar. You never type the underlying tag by hand.

From the contact

  • first_name
  • last_name
  • full_name
  • company_name
  • phone
  • email
  • city
  • state
  • zip_code

From your business

  • sender_name
  • sender_phone
  • sender_address

These pull from your business profile, so you are not retyping your own phone number into every design.

A field with no value for a given contact renders as empty rather than printing a raw placeholder on the card.

Your other import columns stay on the contact

Extra columns in your Excel or CSV import are kept on each contact as custom fields and show up as columns in your contact list. They cannot be placed on a card: no control in the editor or the Design Studio inserts one, so a card merges only the 12 built-in fields above.

To tailor the words for a group, split the list and run one campaign per group:

  • A vet clinic with a Pet Type column can run one campaign for dog owners and one for cat owners, each written for that group.
  • An HVAC company with a Service column can run one campaign for tune-up customers and another for repair customers.

A QR code that belongs to one recipient

Drop a QR code onto the design and each printed card gets its own. Because the code is generated per postcard, a scan tells you which contact scanned it, not just that somebody did. Place it on the front, the back, both, or neither, and drag it wherever it fits the layout.

Where that QR code sends people, and the UTM tags it carries, are resolved at the moment of the scan, not baked in at print time. You can repoint a campaign after the cards are already in the mail. See how tracking works →

What personalization does not do

Worth saying plainly, because some direct mail tools do offer this and you should know before you sign up:

No conditional or if-then content blocks

PostKnock merge fields substitute a value. They do not branch. You cannot write “if the contact is in Texas show this offer, otherwise show that one,” and there are no rules, expressions, or hidden-unless conditions in a design.

In practice, the way to run different messages at different segments is to build separate campaigns and put the right contacts in each. For an owner-operator mailing a few hundred people that is usually simpler than maintaining a rules engine anyway, and it means the proof you approve is exactly the card that prints, with no hidden variant you never looked at.

Also not supported: personalized URLs on their own subdomain (pURLs). Tracking links are per recipient, but they run on a shared short domain rather than a custom one per person.

You see the merge before it prints

The design editor previews merge fields with sample data as you work, so you can see whether a long last name breaks the line before it costs you anything. Before a campaign can go out, its design has to pass a proof review: a rendered front and back of the actual card. Nothing prints unproofed.

Personalization Questions

Which merge fields are built in?▼

There are 12. Nine come from the contact: first name, last name, full name, company name, phone, email, city, state, and ZIP code. Three come from your business profile: sender name, sender phone, and sender address. You insert them from the editor sidebar rather than typing a tag.

Can I use my own data fields?▼

Not on the card. Extra columns from your Excel or CSV import are stored on each contact as custom fields and appear as columns in your contact list, but no editor or Design Studio control places one on a postcard, so a card can merge only the 12 built-in fields. To tailor the words for a group, split the list and run one campaign per group, with copy written for that group.

Does PostKnock support conditional or if-then content?▼

No. Merge fields substitute a value, they do not branch. There is no if-then logic, no rules engine, and no show-this-block-unless conditions in a design. To send different messages to different segments, build separate campaigns and put the right contacts in each.

What happens if a contact is missing a field?▼

The field renders as empty rather than printing a raw placeholder on the card. Write your copy so it still reads correctly when an optional field is blank, and check the preview before approving the proof.

Is each QR code unique to the recipient?▼

Yes. A QR code is generated per postcard, so a scan is attributed to the individual contact who received that card. The destination it points to and the UTM tags it carries are resolved at scan time, which means you can change them after the cards have already been mailed.

Print the detail they actually care about

Import your list, drop in the fields, approve the proof. No minimums, no contracts.

Start Free