Advertising your market on Facebook, Instagram and TikTok
Updated 20 October 2026
Paid social ads can fill an event market, and can just as easily spend $500 on likes from people three states away. The difference is mostly setup: an ad platform that knows which clicks became ticket sales spends your money finding more people like the buyers. One that doesn't, finds people who like clicking.
When ads are worth it
Ads earn their keep when there's something to sell and a date to sell it by: entry tickets to a night market, an early-bird window, a one-off festival market. They're harder to justify for a free weekly market, where nothing on the page converts and the honest measure is foot traffic you can't attribute. For those, the free channels — your stallholders, your email list, the Facebook event and local media — usually do more.
Keep the targeting local. A market's catchment is a drive, not a country: set a radius around the venue that matches how far people really travel to you, and let the platform work within it.
Connect your pixel
A pixel is the ad platform's measurement tag. With it on your market's site, Meta or TikTok learns which people who saw or clicked your ad went on to buy, and uses that to choose who sees the ad next.
Open the market's Marketing page and paste the ID — nothing else, no code:
- Meta Pixel ID — in Meta Events Manager, under Data sources, then Settings. It's the number only.
- TikTok Pixel ID — in TikTok Events Manager, open your pixel, then Settings. It starts with C.
Save, and the pixel loads on your published public pages. Clearing the field turns it off. If you work through Google Tag Manager instead, the same page takes a container ID — see the Tag Manager guide.
What the pixel receives
StallsApp sends the same four moments to each connected pixel, under that platform's standard event names:
| Meta event | TikTok event | Sent when |
|---|---|---|
| PageView | Pageview | A published public page is viewed |
| InitiateCheckout | InitiateCheckout | The ticket form is submitted |
| Purchase | Purchase | A ticket order is completed, with its value |
| SubmitApplication | Lead | A stall application is sent |
Purchases carry the order's value and currency and the ticket types and quantities bought; free tickets count as a purchase of zero. Nothing a visitor typed is sent — no names, email addresses or order numbers. Under our terms, you're responsible for the tags you add and for your own privacy notice, and you mustn't configure them to read what visitors type into forms.
Optimise for the sale, not the click
When you create the campaign, choose a sales or conversions objective and pick Purchase as the event the ad set optimises for. Traffic and engagement objectives are cheaper per click because they find people who click, not people who buy. A small budget optimising for Purchase may take a few days to settle; give it a week before judging it. For a stallholder recruitment drive, optimise for SubmitApplication (Meta) or Lead (TikTok) instead.
Add the URL parameters from the Marketing page to your Meta ads as well, so Sales by source in StallsApp shows which placement sold the tickets in your own numbers, not just Meta's.
Why the numbers won't match exactly
Expect the ad platform to report a little less than you see in StallsApp. Ad blockers and browser tracking protection stop pixels loading for a growing share of visitors, and platforms count only the sales they can tie to an ad. StallsApp's own ticket sales are the complete record; the pixel is how the platform learns, and how you compare one ad against another.
Run your market on StallsApp
Applications, approvals, stall payments, ticketing and market-day tools in one place. Free to start — no card required.
Get started free