Attribution for edtech apps, from first lesson to paid learner
Learners install, take a lesson, start a trial and pay a week later, or book a demo class and enrol after a counsellor call. Linkrunner ties each of those moments back to the campaign, creator or ad that started it.
Language, maths and kids' learning teams trust Linkrunner to measure installs to first lesson and paid learner
Customers include Lingopanda, Matiks, Stimuler, Omli Kids, The 1% Club.





The first payment is what an edtech campaign is worth
For self-serve apps the value event is the first subscription payment after a trial; for lead-gen apps it is the enrolment your team closes after a demo class and counsellor call. A free lesson or a booked demo says little about who will pay, and the payment can land a week after a trial or weeks after a call, often outside the app. Optimise ad platforms on the earliest event that predicts payment, and judge budgets on the payment itself.
- Install
- 1First lesson completeSame session to 1 dayThe activation event for self-serve apps
- 2Demo class bookedSame session to 3 daysThe lead event for counsellor-led apps
- 3Trial startSame session to 2 daysIntent to pay; RevenueCat maps it to TRIAL_STARTED with no revenue
- Optimise on thisFirst paymentTrial length, often day 7 or 8The value event; RevenueCat maps it to FIRST_PAYMENT
- 5Enrolment closed offlineDays to weeksPaid over a call, payment link or centre visit; sent through the server payment API
Why edtech attribution gets lost between the lesson and the payment
The payment happens after a trial or a sales call
Subscription apps get paid when a trial converts; lead-gen apps get paid when a counsellor closes the learner, often on a payment link or at a centre. If that payment never reaches attribution, campaigns get judged on demo bookings that never enrol. Payments sent through the server API land on the install that started them.
How Linkrunner attributes installs →
Click lookback per network
Ad click 10 days before the installClick lookback 1 to 30 days. View-through 1 to 24 hours, off until you turn it on.
Creators drive the installs, and every creator needs a link
Language and exam-prep apps buy reach from hundreds of teachers and creators. Linkrunner creates creator links in bulk through the Campaign API or MCP, and an Influencer role lets each creator see only their own campaigns. Compare day 7 retention by creator, not only installs.
See influencer attribution →
Exam season compresses the budget into a few weeks
Test-prep demand peaks before board and entrance exams, and the school year drives kids' apps. Deferred deep links take each learner to the exam, batch or free lesson the ad promised instead of a generic home screen.
See deep links →
1. Campaign destination
https://get.example.com/product2. The link a user taps, with your parameters
https://get.example.com/AbCdEf?variant_id=987&promo=summer3. getAttributionData() on first open after install
{ "deeplink": "https://get.example.com/product?variant_id=987&promo=summer", "campaignData": { "name": "Summer sale", "type": "INORGANIC" } }4. Your app routes the user
navigate("Product", { id: url.searchParams.get("variant_id") }) // 987
Parents pay, children learn
On kids' apps the ad targets a parent, the install lands on a family device and the learner is a child. Platforms limit how children's data and advertising IDs can be used, so setDisableAaidCollection lets the SDK skip the Android advertising ID, and attribution never needs a child's name or phone number.


Click lookback per network
Ad click 10 days before the installClick lookback 1 to 30 days. View-through 1 to 24 hours, off until you turn it on.
Where edtech teams find learners who pay
- Creators and teachers: the biggest lever for language and exam-prep apps. One link per creator, paid on first lesson or demo booked; at Lingopanda the top 10% of creators drove 75% of installs.
- Meta: UGC and parent-targeted campaigns optimised on first lesson or trial start through the Conversions API. Matiks ran state-level campaigns.
- Google App campaigns and YouTube: bid on first lesson or demo booked as a conversion action, with spend imported next to Meta.
- WhatsApp and SMS: deep links in demo reminders and class groups open the booked class directly and keep the source attached.
- Referral programmes: learners invite classmates;
?referrer=links carry the code through install for your backend to validate and reward. - ShareChat and Moj: Hindi and regional-language learners on Android, with installs and registrations sent back through S2S postbacks.
How Lingopanda built its acquisition on 1,000+ creators
“Linkrunner has helped us seamlessly migrate 400+ campaigns from Google's Firebase Dynamic Links.”
Challenge
Lingopanda, a language learning app, acquires most of its learners through creators. It had 400+ campaigns on Firebase Dynamic Links, which Google shut down, and needed a tracked link for each of 1,000+ creators.
What changed
Every creator got their own Linkrunner link, across 1,536 campaigns, so installs and later events landed on the creator who earned them.
Outcome
478K+ creator-attributed installs, 88% of all installs from creators, a 21.4% creator click-to-install rate, and proof that the top 10% of creators drive 75% of installs.
Frequently asked questions
See which creators and campaigns bring paying learners
Your first 25,000 attributed installs are free with every feature, and most teams go live within a week.