Skip to main content
Marketing Messages let you send a broadcast on Facebook Messenger to people who have not messaged you lately. A normal Messenger broadcast only reaches people who wrote to your Page in the last 24 hours. A paid one reaches anyone who has subscribed to your marketing messages, whenever they last wrote. Meta charges you for it. Each delivered message is billed to your own Meta ad account, against a budget you set on the broadcast. It works on Facebook Pages only. Instagram and WhatsApp broadcasts don’t offer it.

Before you start

You need all of these. Without the plan and a chosen ad account, the wizard won’t let you set a budget, and a paid broadcast can’t be sent without one. Without subscribers, there is nobody to send to.
  • A connected Facebook Page. See Facebook Messenger.
  • A plan that includes Meta Ads. It depends on your plan. On a plan without it, the Meta Ads tile on the Integrations page shows Plan locked. See Plans to check yours. If an agency runs your workspace, ask the agency.
  • A Meta ad account, connected and chosen in DMLY. This is what pays Meta. See Connect your Meta ad account below.
  • People who have subscribed. Nobody is subscribed until they accept a marketing opt-in request from your Page. See Who a marketing message reaches. Start collecting subscribers early: there is no way to import them.
To connect the ad account, your team role needs the Connect & manage channels permission. Owners and admins have it.

Connect your Meta ad account

The ad account is the one Meta bills. Its currency is the currency of every budget you set, so pick it with care.
1

Open the Meta Ads tile

In the sidebar, under Configurations, select Integrations. The page opens on the Channels tab, and Meta Ads isn’t there. Select All (or Productivity), then open the Meta Ads tile.
2

Sign in with Facebook

Select Connect Meta Ads. Sign in with the Facebook profile that manages the ad account, and tick the ad accounts to share. Meta may also ask you to choose a business and a Page, and to review permissions.Finish within 30 minutes. After that the sign-in expires and DMLY shows Invalid or expired OAuth state. Start the connection again.
3

Choose the ad account

If you shared one ad account, DMLY picks it for you and you’re done.If you shared several, DMLY doesn’t guess. The panel shows No ad account selected yet. Pick one below so spend can be reported. Pick the account under Choose which ad account this workspace reports on and select Use this account. Each row shows the account’s currency: that’s the currency your budgets will be in.Once chosen, the panel shows Reporting on with the account’s name, id and currency. You can change it later from the same list.
4

Test it (optional)

Select Test connection. A pass reads Meta Ads reporting OK — spend for followed by your ad account id.
Until an ad account is chosen, the budget box in the broadcast wizard is replaced with Several ad accounts were granted and none is chosen yet. Choose one under Integrations → Meta Ads before setting a budget. That’s the most common reason the budget box is missing.
The same connection also puts your ad spend in the Ads report.

Who a marketing message reaches

A paid message only reaches a contact who has subscribed to ongoing marketing messages on this Facebook Page. A subscription belongs to one Page. Someone who subscribed on another Page can’t be reached from this one.

Ask people to subscribe

In DMLY, you ask people to subscribe with the Marketing Opt-in step in an automation on your Facebook channel.
1

Add the Marketing Opt-in step

In the flow builder, open the Messenger (FB/IG) group and add Marketing Opt-in. See Flow builder.
2

Set the opt-in type

Set Opt-in type to Ongoing marketing messages. The other choice, One follow-up message, only allows one free follow-up and never makes someone reachable by a paid broadcast.
3

Fill in the request

Give it a Request title (the default is Get updates & offers), and a Topic and an Image URL if you like. Then choose How often you plan to message: Daily, Weekly or Monthly.
The person sees your request in Messenger. When they accept, their conversation in the Inbox shows 🔔 Subscribed to marketing messages — reachable outside the 24-hour window until they stop. On an Instagram channel the step only offers the one-time kind, because paid reach is Facebook only.

Who is left out

  • Anyone who hasn’t subscribed on this Page. They’re simply not in the audience.
  • Anyone who replied STOP (or unsubscribe, cancel and similar) on any channel. That stops every marketing subscription they hold. Replying START doesn’t bring them back: they have to accept a new opt-in request.
  • Anyone who stopped marketing messages in Messenger itself. The Inbox shows 🔕 Stopped marketing messages — no longer reachable outside the 24-hour window.
  • Anyone whose subscription has expired.
  • Anyone you sent a marketing message in the last 12 hours. Meta allows at most one every 12 hours per person. This is the only frequency limit DMLY enforces; the Daily, Weekly or Monthly you picked on the opt-in is passed to Meta, not checked by DMLY.

Where to see who is subscribed

There is no subscriber list. You see a subscription in two places: the Inbox bubble above, and the count next to the Marketing subscribers audience in the broadcast wizard. That count is the people you can reach right now, so anyone inside their 12-hour gap is already left out.
The segment rule Marketing opt-in is not about these subscriptions. Marketing opt-in: opted in only means the contact hasn’t unsubscribed from your messages. Don’t use it to find paid-message subscribers.

Send a paid broadcast

A paid broadcast uses the normal four-step wizard. See Create a broadcast for everything that isn’t specific to paid sends.
1

Start on your Facebook channel

The broadcast uses the channel you’re currently on, so switch to your Facebook Page first. Then go to Messaging → Broadcasts → New broadcast.
2

Choose Marketing Messages (paid)

On the Message step, under Reach, choose Marketing Messages (paid). The audience switches to Marketing subscribers on its own. You can’t pair a paid send with any other audience, and Reachable contacts only makes no difference here, because people who opted out are always left out.
3

Write the message

Type your message as plain text. Paid messages are text only.The help line under the box still says Meta only delivers to people who messaged you in the last 24 hours. That’s written for standard sends. Ignore it for a paid one.
4

Set the budget

Under Budget, choose Total for this campaign (the default) or Per day, and type an amount. The currency next to the box is your ad account’s currency. Read What it costs before you pick a number.
5

Schedule it

Choose Send immediately after approval or Schedule for later. A paid broadcast goes out at one fixed time for everyone: At this time in each contact’s timezone is not offered, and the wizard says Paid marketing messages send at one fixed time, so per-contact timezone scheduling is not available.
6

Review and send

The Review step adds a Budget row: the amount, the currency, and whether it’s a total or per day. Check it. Nothing else on this step says the send is paid. If your role needs approval, the broadcast waits for an approver like any other.
Send test message doesn’t appear for Facebook broadcasts, paid or not. Tests are for WhatsApp templates only.
Pausing, resuming, cancelling and deleting work as they do for any broadcast. Pausing stops DMLY sending; it doesn’t pause anything in your Meta account.

What it costs

A paid broadcast is paid for twice, by two different parties. Meta charges your ad account. Meta bills each delivered message against the budget you set, in your ad account’s currency. The money goes straight from your ad account to Meta, under your Meta billing terms. DMLY never handles it and doesn’t show a price per message before you send. DMLY counts it against your plan. Each paid message that goes out also uses one message from your plan’s broadcast and template messages allowance, exactly like any other broadcast. Skipped and failed recipients don’t count. If your allowance runs out mid-broadcast, the rest are refused, even if your Meta budget has money left. See Plans for your allowance.
The budget is in your ad account’s currency, which may not be your workspace’s currency. Type 50 next to NGN and you’ve set 50 naira; type 50 next to USD and it’s 50 dollars. Check the currency code beside the box, and again on the Review step, before you send.

The two budget types

  • Total for this campaign is one budget for the whole broadcast. DMLY creates Meta’s campaign for it when the broadcast starts sending, and that campaign runs for three days. If you pause a broadcast for longer than that, Meta may refuse the rest when you resume.
  • Per day is a budget for each day, with no end date.
The budget must be more than zero, and at most 1,000,000. DMLY doesn’t check it against Meta’s own minimum, and it doesn’t watch how much of it is left. If Meta refuses a message, that recipient is recorded as failed with Meta rejected the marketing message.

Where to see what you spent

Open the broadcast. The Paid campaign panel shows Meta’s Delivered, Read rate, Spend and Cost per delivered. It refreshes every hour, and shows Not reported by Meta yet until Meta has figures. It keeps refreshing for 28 days after the broadcast was created, then stays as it is. Spend and Cost per delivered only show to teammates whose role can View finance (invoices, payments, orders).

Read the results

On a paid broadcast, the usual figures at the top stay at Sent. Meta doesn’t report delivery or reads per person for paid messages, so Delivered and Opened will look low. Use the Paid campaign panel for delivery and reads instead. See Broadcast analytics for the rest of the page. Under Messenger delivery you’ll see two paid-only rows:
  • Sent as a paid marketing message
  • Skipped — messaged within the last 12 hours
A skipped person isn’t counted against your plan and costs nothing on Meta. They still appear under Why messages failed, as Skipped: messaged within the last 12 hours. They won’t be sent later by this broadcast either; reach them with a later one. Recipients who failed are grouped under Why messages failed, one row per reason. The paid-only reasons are:

Troubleshooting

You’re not on a Facebook channel. Paid reach is Facebook only, so Instagram, WhatsApp and the other channels never show it. Switch to your Facebook Page and start the broadcast again.
In its place you’ll see one of two messages:
  • Connect a Meta ad account under Integrations to set a budget. Your plan doesn’t include Meta Ads, or no ad account is connected. See Before you start.
  • Several ad accounts were granted and none is chosen yet. Choose one in the Meta Ads panel. See Connect your Meta ad account.
Without a budget the wizard lists Budget under Add these before you can create the broadcast: and won’t go further.
Nobody on this Page holds an ongoing marketing subscription right now. Either no one has accepted an Ongoing marketing messages opt-in yet, or everyone who did was messaged in the last 12 hours, stopped, or expired. Check that your Marketing Opt-in step is set to Ongoing marketing messages, not One follow-up message.
Switching Reach back to Standard message doesn’t change the audience back. It stays on Marketing subscribers, which only works for a paid send, and DMLY refuses it with The marketing subscriber audience can only be used with a Marketing Messages send. Go to the Audience step and pick another audience.
Meta wouldn’t start a Marketing Messages campaign for your ad account and Page. DMLY tries again for each recipient, so they all fail the same way. Check the ad account in Meta Ads Manager, then disconnect Meta Ads and connect it again.
They were sent a marketing message less than 12 hours earlier, so Meta wouldn’t take another. They’re marked Skipped — messaged within the last 12 hours, cost nothing, and don’t count against your plan. Send to them in a later broadcast.