Meta Pixel & Conversions API

Meta Pixel & Conversions API, set up properly. So your ads learn who actually bought.

Facebook and Instagram ads can only find more customers like your real ones if they are told who your real ones are. We connect your website, WhatsApp and M-Pesa payments to Meta (the browser way and the server way), and prove it works before a shilling is spent.

  • Pixel + Conversions API
  • M-Pesa payments as sales
  • No double counting
  • Proven in Events Manager
Man reviewing ad performance charts on a laptop and a tablet
Purchase · KSh 4,500Browser + server · counted once · illustration

Why Meta ads waste money in Kenya

Your ads can only learn what they are told.

Meta decides who sees your next ad from the people who acted on the last one. When the signal is missing or wrong, it optimises for the wrong people, and you pay for it every day. These are the four leaks we find most.

The WhatsApp tap nobody counted

Most Kenyan customers enquire on WhatsApp. If that tap is not reported, Meta thinks your ad brought nobody, and stops showing it to the people who would have messaged you.

The M-Pesa payment the browser never saw

The buyer approves the payment on their phone; Safaricom confirms it to your server. No browser is involved, so a Pixel alone can never report that sale.

Browsers and phones that block tracking

Ad blockers, private browsing and phone privacy settings stop many browser signals. The server route keeps reporting when the browser goes quiet.

The sale counted twice, or not at all

Pixel and server both report, nobody matches them, and your results double. Or one is broken and nobody notices for months. Both make every ad decision wrong.

Marketing team planning an ad campaign around a laptop
Browser + serverthe set-up Meta recommends

What we set up

The Pixel and the Conversions API — working as one.

Meta’s own documentation recommends running the Conversions API alongside the Pixel and sending the same events through both. That is the set-up we build, end to end:

  • Meta Pixel on every page, with the standard events Meta’s ads understand: ViewContent, Lead, Contact, InitiateCheckout, Purchase
  • Conversions API sending the same events from your server, in real time
  • One shared event ID on both, so Meta counts each sale once
  • Customer details (email, phone) hashed before they leave your server, plus the browser details Meta asks for
  • WhatsApp, call and form taps reported as leads, with which page and ad they came from
  • M-Pesa payments confirmed by Safaricom reported as Purchases, with the real amount
  • The same events sent to Google Analytics 4 and Google Ads, so all your ads learn from one truth

Which one does what, in plain words: Meta Pixel vs Conversions API: what each one sees.

From the ad to the M-Pesa message

Every step reported — the way a Kenyan sale really happens.

  1. The ad

    Seen on Facebook or Instagram. Meta remembers the click.

  2. The visit

    The Pixel reports the page and the product viewed.

  3. The enquiry

    A WhatsApp tap or form, reported as a lead, browser and server.

  4. The payment

    Safaricom confirms M-Pesa to your server; the server reports the sale.

  5. The learning

    Meta shows your next ads to more people who pay.

How you know it works

Proven before your ads rely on it. We check, then you spend.

Tracking that “should work” is how budgets disappear quietly. We check every event in Meta’s own tools and hand you the evidence.

  1. Test events

    We trigger every event ourselves and watch each one arrive in Meta’s Events Manager, from the browser and from the server.

  2. Counted once

    We confirm the browser and server copies are matched by their event ID, so a sale shows once, not twice.

  3. Match quality

    Meta scores each server event out of 10 for how well it can be matched to a real person. We raise it with the right customer details, sent safely.

  4. A real sale

    One real enquiry and one real M-Pesa payment, end to end, before your ads rely on any of it.

  5. Plain-words report

    A one-page note of what is tracked, where to see it, and what to watch each month.

Price

A free tracking check first — then one fixed price.

We look at your website, your Meta ad account and how your customers actually pay, then send a written quote for exactly what is missing. On Gain Traction, tracking is set up as part of the programme.

Gain Traction Basic

KSh 25,000

total for 3 months · tracking included

A small business with a focused website and one clear service or product line.

Gain Traction Standard

KSh 45,000

total for 3 months · tracking included

A growing business with several services, a bigger catalogue or more than one location.

Gain Traction Advanced

KSh 120,000

total for 3 months · tracking included

An established company with a large website, many products and ambitious targets.

Running the ads themselves: Google & Meta

Questions

Tracking questions, answered.

See all questions
What is the Meta Pixel?

A small piece of code on your website that tells Meta (Facebook and Instagram) what visitors do after they click your ad: view a product, send an enquiry, start checkout, pay. Ads use those signals to find more people who do the same.

What is the Conversions API?

The same signals, sent from your website’s server straight to Meta instead of from the visitor’s browser. It still works when a browser blocks the Pixel, when a phone limits tracking, or when the sale happens somewhere the browser never sees, such as an M-Pesa payment.

Do I need both the Pixel and the Conversions API?

Yes, if you run Meta ads seriously. Meta’s own documentation recommends using the Conversions API alongside the Pixel and sending the same events through both, with a shared event ID so each sale is counted once.

Will my sales be counted twice?

Not if it is set up properly. Each event carries the same ID from the browser and the server, and Meta keeps one of them, as long as both arrive within 48 hours. We test this before your ads rely on it.

Can you track WhatsApp enquiries and M-Pesa payments?

Yes. A tap on your WhatsApp button can be reported as a Contact, and an M-Pesa payment confirmed by Safaricom can be reported from the server as a Purchase, with the real amount: the event most Kenyan ads never see.

How much does it cost?

We start with a free tracking check of your website and ad account and then give you a fixed, written quote. If you are on our Gain Traction programme, tracking set-up is part of it.

Is it legal to send customer details to Meta?

Contact details are hashed (scrambled one-way) before they are sent, and your privacy notice must say that you share data with advertising partners. We set both up and keep only what the ads need.

A strategy call between Omokah and a Nairobi business owner

Free strategy call

Let’s find out what your website could bring in.

We look at your business, your competitors and what you need, and you leave with a clear plan, even if you don’t work with us.

Request your call

What do you want your website to do?

Pick all that apply

Your message opens in WhatsApp or your email app so you can check it before sending. We never share your details.

Chat with us