Skip to content

Connect Meta

Ledion sends conversions to Meta’s Conversions API, straight to your dataset. You give Ledion two things from Events Manager: the dataset ID and an access token. No Meta app and no App Review: the token belongs to your business.

Before you start

  • Ledion installed in HubSpot (Install Ledion).
  • Developer privileges on the Meta business that owns your dataset. Only people with them see the link that creates the token.
  • The dataset your Meta ads use. Meta now calls pixels datasets, and the ID is the same number. For Conversion Leads, Meta wants a CRM dataset (see below).

1. Create the token in Events Manager

  1. In Meta’s Events Manager, choose the dataset your ads use.
  2. Open Settings. Under Conversions API, in Set up manually, click Generate access token.
  3. Follow the pop-up. Meta creates a Conversions API app and a system user in your business for this token.
  4. Copy the token.
  5. Copy the dataset ID: the number at the top of the dataset’s settings.

Optional, for Send test: open Test events and copy the test code.

Screenshot to come: Meta Events Manager, dataset Settings: Conversions API, Set up manually, Generate access token, with the dataset ID visible at the top

2. Paste it into Ledion

  1. In Ledion, open Connections and add Meta.
  2. Paste the Dataset ID and the Conversions API access token. Add the test code under Test events code (optional) if you copied one.
  3. Check Sending to Meta, the confirmation that Ledion may send Meta each conversion your workflows send.
  4. Click Connect Meta. Ledion checks the token with Meta before it saves the connection.

3. Choose what Meta receives

Each conversion you create in Ledion has a row for Meta. It sends one of two kinds of event:

  • A CRM stage event (the default), named after your stage, like “Closed won”. This is the format Meta’s Conversion Leads uses.
  • A standard event: Lead, Purchase, CompleteRegistration, Schedule, SubmitApplication or Contact, or a custom name.

The details are in Create a conversion.

If you use Conversion Leads

Meta’s requirements for Conversion Leads, from its Conversions API for CRM guide:

  • Facebook and Instagram Lead Ads (Instant Forms) only.
  • A CRM dataset. In Events Manager, it’s set up in the dataset’s Settings, in the Conversion Leads section.
  • At least 200 leads a month. The stage you optimize for has to happen within 28 days of the lead, for 1% to 40% of leads.
  • At least two stages sent, including the raw lead. Three or more is better.
  • CRM events for at least 60% of your leads.
  • Uploads at least once a day. Ledion sends each event when the step runs.

The Meta lead ID is the strongest match key. Tell Ledion where it lives: in Ledion’s Settings, under More options, set Meta lead ID property to the internal name of the HubSpot property that holds it.

A setup that fits: three conversions, “Lead”, “Qualified” and “Closed won”, each sent from a workflow on a lifecycle stage or deal stage change.

Meta checks the data in 1 to 2 days, then learns for 2 to 4 weeks. Don’t switch datasets after you start: that restarts the learning.

Check it worked

  • Send test. On Ledion’s Conversions page, Send test uses your test code. The event shows in Events Manager under Test events.
  • Real sends show in Events Manager → Data sources → your dataset → Overview, within about 20 minutes.
  • Activity shows each send as sent, or failed with Meta’s reason.

Screenshot to come: Meta Events Manager, Test events tab: the test code field, and a test event from Ledion in the list

Meta shows Event Match Quality only for web events, not for CRM events. For coverage, use Ledion’s Tracking health: it shows the share of your paid leads that carry a Meta click ID.

Common problems

  • There’s no Generate access token link. You need developer privileges on the Meta business. Ask an admin of the business for them, or ask the admin to create the token.
  • “That token isn’t valid.” Meta rejected the token, so Ledion saved nothing. Copy the whole token again, or generate a new one.
  • “Meta connection needs reconnecting.” The token stopped working: it was revoked, or it expired. Meta’s docs don’t say whether these tokens expire, so this can happen. Generate a new token, click Reconnect on the Meta connection and paste it with the same dataset ID. Then use Retry failed sends in Activity for anything that failed in the meantime and is still under 7 days old.
  • “Ledion can’t access [dataset ID] in Meta. Check that access is still granted.” The token doesn’t cover this dataset. Generate a token from this dataset’s own settings, then add Meta again in Connections with the same dataset ID and the new token: Ledion updates the connection. Then use Retry failed sends in Activity.
  • “Meta can’t find ‘[event name]’. It may be deleted, paused or renamed in Meta.” On Meta this means the dataset is gone, or the dataset ID is wrong: the event name in the message is just the event Ledion tried to send. Check the dataset ID in Ledion. It must be the dataset you created the token in.
  • The send shows as Too old (“Too old for Meta (7-day limit).”). Meta takes events up to 7 days old. Ledion sends when the step runs, so this happens when the step maps Occurred at to an older date, like the close date of an old deal.
  • “Meta: the conversion time is earlier than the ad click or the lead. Check what the step maps to Occurred at.” For CRM stage events, Meta wants each event to happen no earlier than the lead, so Ledion checks it against the contact’s create date and doesn’t send it: the result shows as Too old (expired). Check what the step maps to Occurred at.
  • “Meta: no lead ID, click ID, email or phone on the contact.” The step’s meta output is no_match. Meta needs at least one of: the Meta lead ID, an email, a phone, or Meta’s click or browser ID (fbc, fbp). The capture script saves the last two through your HubSpot forms.
  • An event called LedionConnectionTest shows in Test events. That’s Ledion checking the connection with your test code. It has no value and matches no one.

To disconnect, remove the connection on Ledion’s Connections page (Disconnect and uninstall).

Something missing or wrong? Email santi@ledion.io.