51

Bespoke Closed-Loop Attribution API — GoHighLevel × Meta Conversions API (Senior Backend Developer)

UpworkGBNot specifiedexpert
API
Overview We're a UK lead generation agency running Meta advertising campaigns for trades businesses across the UK (bathrooms, kitchens, windows). We generate leads at scale for ~40 active clients and manage every lead through GoHighLevel CRM. We're hiring a senior backend developer to build a proprietary, bespoke API from scratch. This is not a Zapier workflow. This is not an n8n automation. This is a custom-built piece of infrastructure that will become the data engine behind our entire advertising operation. If you've built serious server-side integrations, understand how Meta's algorithm actually learns, and can architect something clean, reliable, and extensible — read on. The Problem Meta's algorithm is only as good as the data you feed it. Right now, most agencies send Meta one signal: a form submission. Meta treats that as a conversion, optimises toward people who fill in forms, and the agency wonders why half their leads never answer the phone. We're fixing that. We want Meta to know — in real time — exactly what happened to every single lead after they submitted their details. Who booked. Who ghosted. Who got a quote. Who became a £6,000 bathroom installation. And critically, who didn't — so Meta stops sending us more of them. The result is an algorithm that continuously self-optimises toward our highest-value customers, not just our most prolific form-fillers. What We're Building A hosted, bespoke API that: Receives real-time webhook events from GoHighLevel when a lead's pipeline stage changes Maps each stage to the correct Meta Conversions API event Passes hashed PII, event metadata, and conversion value back to Meta server-side Sends suppression signals for leads that don't convert — so Meta actively deprioritises that audience profile Deduplicates against any browser-side pixel events to maintain data integrity Runs reliably on our existing Hetzner VPS (Ubuntu, Linux) Pipeline → CAPI Event Mapping: GHL Pipeline StageMeta CAPI EventLead submittedLeadAppointment bookedScheduleQuote sentCustomEvent: QuoteSentJob soldPurchase + dynamic GBP value from GHL opportunityNo appointment / Lost / GhostSuppression signal — negative audience signal to Meta Technical Requirements Bespoke API — built from scratch, clean architecture, fully documented GoHighLevel webhook integration — trigger on opportunity stage changes across multiple pipelines Meta Conversions API (server-side only) — no reliance on browser pixel for conversion events PII hashing to Meta standard — SHA-256 on email, phone, full name before transmission Event deduplication — event_id matching between CAPI and pixel to prevent double attribution Dynamic conversion value — pulled from GHL opportunity field at the point of Job Sold Negative signal handling — suppression events or custom signals for non-converting leads Error handling and logging — failed events must be caught, logged, and retried Hosted on Hetzner VPS — must be stable, lightweight, and maintainable Full IP transfer — we own everything built Handover must include: Complete source code via GitHub (private repo transfer) Full API documentation Walkthrough session so our team can maintain and extend it going forward Who We're Looking For You have built server-side Meta CAPI integrations before and can speak to them in specific technical detail. You understand what event deduplication actually means in practice. You know what a suppression signal is and how Meta uses negative audience data. You've worked with GHL's API or webhooks, or can demonstrate you can pick it up quickly. You write clean, documented code. You communicate clearly. You deliver. You are not someone who will propose wrapping this in a third-party automation tool and calling it a custom build.
View Original Listing
Unlock AI intelligence, score breakdowns, and real-time alerts
Upgrade to Pro — $29.99/mo

Client

Spent: $9,555.35Rating: 4.8Verified