<!-- Growth Infrastructure for Mobility & Transport | Expertise combo page (Service x Industry) --> <!-- Velocity Growth | velocitygrowth.ae/expertise/growth-infrastructure-for-mobility-transport --> <link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link href="https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&family=Nunito+Sans:wght@400;500;600;700&display=swap" rel="stylesheet"> <main role="main"> <article itemscope itemtype="https://schema.org/WebPage"> <section class="vg-section" style="background:#06054B;padding:100px 0 80px;position:relative;overflow:hidden;"> <div style="max-width:1200px;margin:0 auto;padding:0 24px;position:relative;z-index:1;"> <nav style="margin-bottom:32px;" aria-label="Breadcrumb"> <ol style="font-family:'Nunito Sans',sans-serif;list-style:none;padding:0;margin:0;display:flex;gap:8px;align-items:center;font-size:16px;color:#94a3b8;flex-wrap:wrap;"> <li><a href="https://www.velocitygrowth.ae" style="color:#94a3b8;text-decoration:none;">Home</a></li> <li style="color:#94a3b8;">&rsaquo;</li> <li><a href="https://www.velocitygrowth.ae/expertise" style="color:#94a3b8;text-decoration:none;">Expertise</a></li> <li style="color:#94a3b8;">&rsaquo;</li> <li style="color:#9431ff;">Growth Infrastructure for Mobility</li> </ol> </nav> <div class="vg-grid-2" style="display:grid;grid-template-columns:1fr 0.8fr;gap:48px;align-items:center;"> <div> <div style="display:inline-block;font-family:'Nunito Sans',sans-serif;font-size:13px;font-weight:600;color:#c084fc;background:rgba(148,49,255,0.12);border:1px solid rgba(148,49,255,0.3);padding:6px 14px;border-radius:100px;margin-bottom:20px;">Mobility growth · UAE &amp; GCC</div> <h1 style="font-family:'Montserrat',sans-serif;font-size:50px;font-weight:700;line-height:1.12;color:#fff;margin:0 0 22px;"><span style="background:linear-gradient(135deg,#9431ff 0%,#c084fc 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;">Growth Infrastructure</span> for Mobility &amp; Transport in the UAE</h1> <p style="font-family:'Nunito Sans',sans-serif;font-size:20px;line-height:1.7;color:#c8cdd3;max-width:640px;margin:0 0 28px;">You cannot scale a mobility network on numbers you cannot trust. Installs do not equal rides, privacy changes broke attribution, and the two sides of the network are measured separately. We build the tracking, signal, and data layer that makes completed rides and both sides of the network measurable.</p> <div style="display:flex;gap:18px;flex-wrap:wrap;margin:0 0 32px;"><div style="display:flex;align-items:center;gap:7px;font-family:'Nunito Sans',sans-serif;font-size:13px;color:#c8cdd3;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#34d399" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg>Completed-ride signal</div><div style="display:flex;align-items:center;gap:7px;font-family:'Nunito Sans',sans-serif;font-size:13px;color:#c8cdd3;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#34d399" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg>Server-side &amp; MMP native</div><div style="display:flex;align-items:center;gap:7px;font-family:'Nunito Sans',sans-serif;font-size:13px;color:#c8cdd3;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#34d399" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg>Two-sided measurement</div><div style="display:flex;align-items:center;gap:7px;font-family:'Nunito Sans',sans-serif;font-size:13px;color:#c8cdd3;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#34d399" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg>Attribution you can trust</div></div> <div style="display:flex;gap:16px;flex-wrap:wrap;align-items:center;"> <a href="#audit" style="display:inline-block;background:#9431ff;color:#fff;font-family:'Nunito Sans',sans-serif;font-size:16px;font-weight:600;padding:14px 32px;border-radius:100px;text-decoration:none;" onmouseover="this.style.background='#7a28d6'" onmouseout="this.style.background='#9431ff'">Book a Free Discovery Call</a> <a href="#arsenal" style="display:inline-block;color:#fff;font-family:'Nunito Sans',sans-serif;font-size:16px;font-weight:500;padding:14px 24px;text-decoration:none;border:1px solid rgba(255,255,255,0.25);border-radius:100px;">See how we solve it &darr;</a> </div> </div> <div><div style="display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:380px;width:100%;margin:0 auto;"><div style="background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:22px;text-align:center;"> <div style="font-family:'Montserrat',sans-serif;font-size:26px;font-weight:600;color:#fff;">Completed rides</div> <div style="font-family:'Nunito Sans',sans-serif;font-size:12px;color:#94a3b8;margin-top:4px;">Not installs</div> </div> <div style="background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:22px;text-align:center;"> <div style="font-family:'Montserrat',sans-serif;font-size:26px;font-weight:600;color:#fff;">Server-side</div> <div style="font-family:'Nunito Sans',sans-serif;font-size:12px;color:#94a3b8;margin-top:4px;">CAPI + MMP + SS-GTM</div> </div> <div style="background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:22px;text-align:center;"> <div style="font-family:'Montserrat',sans-serif;font-size:26px;font-weight:600;color:#fff;">Two-sided</div> <div style="font-family:'Nunito Sans',sans-serif;font-size:12px;color:#94a3b8;margin-top:4px;">Riders and drivers</div> </div> <div style="background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:22px;text-align:center;"> <div style="font-family:'Montserrat',sans-serif;font-size:26px;font-weight:600;color:#fff;">Trusted</div> <div style="font-family:'Nunito Sans',sans-serif;font-size:12px;color:#94a3b8;margin-top:4px;">Attribution that holds</div> </div></div></div> </div> </div> </section> <section style="background:#fff;padding:40px 0;border-bottom:1px solid #f0f0f0;overflow:hidden;"> <div style="max-width:1200px;margin:0 auto;padding:0 24px;"> <p style="font-family:'Nunito Sans',sans-serif;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:2px;color:#94a3b8;text-align:center;margin:0 0 28px;">Brands we have worked with</p> </div> <style>@keyframes vg-marquee-exp{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}</style> <div style="position:relative;width:100%;overflow:hidden;mask-image:linear-gradient(to right,transparent 0%,black 10%,black 90%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,black 10%,black 90%,transparent 100%);"> <div style="display:flex;align-items:center;gap:56px;animation:vg-marquee-exp 35s linear infinite;width:max-content;"> <img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1f2f5bbe0d5e85d1f5ce_uber.png" alt="Uber logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1e61ed4db70adb128885_noon.png" alt="noon logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1dc56843f3f55f632485_accenture.png" alt="Accenture logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1dd8b280547775a1b3ac_botim.png" alt="Botim logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1e7da19fe190aec297c3_payby.png" alt="PayBy logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1ed5e600d7dec12bb156_rizek.png" alt="Rizek logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1efea67500c4140443df_times%20internet.png" alt="Times Internet logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1eef5bbe0d5e85d1bc29_swwl.png" alt="SWVL logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1e3af47e53bf47446126_hafla.png" alt="Hafla logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1ea4895ae3c345ade9f5_quickbus.png" alt="QuickBus logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1df7a3ec3d9cb9ea6bf5_buupass.png" alt="BuuPass logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1e2c29eb84606e009c62_flaunte.png" alt="Flaunte logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1e18229541516fc99100_crescent.png" alt="Crescent logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1e6e6cab636a52292e07_oxinus.png" alt="Oxinus logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1e4d2383766a71df4308_justgo.png" alt="JustGo logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1ec814fa830e5a20e34c_riva.png" alt="Riva logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1de6311a66b57589b61b_break.png" alt="BreakBread logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1e068baf7ac1c7656f7f_cashnow.png" alt="CashNow logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1f3e5406a1691597fe35_ubereats.png" alt="Uber Eats logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1e908906e2f7858ee71a_redemob.png" alt="Redeemob logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1ee15c91e866ded703e4_spotlight.png" alt="Spotlight logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1e95a19fe190aec2aa7a_posom.png" alt="Posom logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/68d13ad04dab597f4008196d_Group.png" alt="Test AI logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/68d1474b56e7a60a94481ac2_Munsit_Logo.svg" alt="Munsit logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/68d147027342e79e3f818cb6_ig0cfV48ODPkisMrcixNwaZiE.svg" alt="Superchat logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/> <img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1f2f5bbe0d5e85d1f5ce_uber.png" alt="Uber logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1e61ed4db70adb128885_noon.png" alt="noon logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1dc56843f3f55f632485_accenture.png" alt="Accenture logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1dd8b280547775a1b3ac_botim.png" alt="Botim logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1e7da19fe190aec297c3_payby.png" alt="PayBy logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1ed5e600d7dec12bb156_rizek.png" alt="Rizek logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1efea67500c4140443df_times%20internet.png" alt="Times Internet logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1eef5bbe0d5e85d1bc29_swwl.png" alt="SWVL logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1e3af47e53bf47446126_hafla.png" alt="Hafla logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1ea4895ae3c345ade9f5_quickbus.png" alt="QuickBus logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1df7a3ec3d9cb9ea6bf5_buupass.png" alt="BuuPass logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1e2c29eb84606e009c62_flaunte.png" alt="Flaunte logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1e18229541516fc99100_crescent.png" alt="Crescent logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1e6e6cab636a52292e07_oxinus.png" alt="Oxinus logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1e4d2383766a71df4308_justgo.png" alt="JustGo logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1ec814fa830e5a20e34c_riva.png" alt="Riva logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1de6311a66b57589b61b_break.png" alt="BreakBread logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1e068baf7ac1c7656f7f_cashnow.png" alt="CashNow logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1f3e5406a1691597fe35_ubereats.png" alt="Uber Eats logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1e908906e2f7858ee71a_redemob.png" alt="Redeemob logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1ee15c91e866ded703e4_spotlight.png" alt="Spotlight logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/67ed1e95a19fe190aec2aa7a_posom.png" alt="Posom logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/68d13ad04dab597f4008196d_Group.png" alt="Test AI logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/68d1474b56e7a60a94481ac2_Munsit_Logo.svg" alt="Munsit logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/><img src="https://cdn.prod.website-files.com/67d85ba75cf372c97c80ab84/68d147027342e79e3f818cb6_ig0cfV48ODPkisMrcixNwaZiE.svg" alt="Superchat logo" style="height:32px;width:auto;object-fit:contain;flex-shrink:0;"/> </div> </div> </section> <section class="vg-section" style="background:#fff;padding:56px 0 8px;"> <div style="max-width:1000px;margin:0 auto;padding:0 24px;"> <div style="background:#f8f9fa;border:1px solid #e8eaf0;border-radius:20px;padding:28px;"> <div style="font-family:'Nunito Sans',sans-serif;font-size:12px;font-weight:700;color:#9431ff;text-transform:uppercase;letter-spacing:0.08em;margin-bottom:10px;">In short</div> <p style="font-family:'Nunito Sans',sans-serif;font-size:17px;font-weight:600;line-height:1.6;color:#06054B;margin:0 0 20px;">Growth infrastructure for mobility and transport means building the tracking, signal, and data layer that makes a two-sided network measurable: a completed-ride conversion schema, server-side and MMP measurement that survives privacy changes, and separate, trustworthy attribution for riders and supply. Mobility companies fail to scale efficiently not for lack of spend but because installs do not equal rides, attribution broke after privacy changes, and the two sides are measured in isolation. The win is a foundation that makes completed-ride value and network balance measurable.</p> <div style="display:grid;grid-template-columns:1fr 1fr;gap:14px 28px;" class="vg-grid-2"><div style="display:flex;gap:12px;align-items:flex-start;"> <span style="flex-shrink:0;width:26px;height:26px;border-radius:8px;background:rgba(148,49,255,0.1);display:flex;align-items:center;justify-content:center;"><svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg></span> <div style="font-family:'Nunito Sans',sans-serif;font-size:15px;line-height:1.55;"><span style="font-weight:700;color:#06054B;">The real metric:</span> <span style="color:#334155;">trustworthy completed-ride value and two-sided balance, not installs.</span></div> </div> <div style="display:flex;gap:12px;align-items:flex-start;"> <span style="flex-shrink:0;width:26px;height:26px;border-radius:8px;background:rgba(148,49,255,0.1);display:flex;align-items:center;justify-content:center;"><svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg></span> <div style="font-family:'Nunito Sans',sans-serif;font-size:15px;line-height:1.55;"><span style="font-weight:700;color:#06054B;">The real bottleneck:</span> <span style="color:#334155;">broken post-privacy attribution and install-only measurement, not ad budget.</span></div> </div> <div style="display:flex;gap:12px;align-items:flex-start;"> <span style="flex-shrink:0;width:26px;height:26px;border-radius:8px;background:rgba(148,49,255,0.1);display:flex;align-items:center;justify-content:center;"><svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg></span> <div style="font-family:'Nunito Sans',sans-serif;font-size:15px;line-height:1.55;"><span style="font-weight:700;color:#06054B;">The real foundation:</span> <span style="color:#334155;">completed-ride schema, server-side, MMP, and a data foundation.</span></div> </div> <div style="display:flex;gap:12px;align-items:flex-start;"> <span style="flex-shrink:0;width:26px;height:26px;border-radius:8px;background:rgba(148,49,255,0.1);display:flex;align-items:center;justify-content:center;"><svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg></span> <div style="font-family:'Nunito Sans',sans-serif;font-size:15px;line-height:1.55;"><span style="font-weight:700;color:#06054B;">The real proof:</span> <span style="color:#334155;">offline-conversion tracking delivered a 113 percent measured ROAS improvement (adjacent sector).</span></div> </div></div> </div> </div> </section> <section class="vg-section" style="background:#fff;padding:8px 0 56px;"> <div style="max-width:1000px;margin:0 auto;padding:0 24px;"> <div style="border-top:1px solid #e8eaf0;padding-top:28px;"> <div style="font-family:'Nunito Sans',sans-serif;font-size:12px;font-weight:700;color:#9431ff;text-transform:uppercase;letter-spacing:0.08em;margin-bottom:18px;text-align:center;">Velocity, by the numbers</div> <div style="display:flex;flex-wrap:wrap;gap:20px;justify-content:center;"><div style="flex:1;min-width:150px;text-align:center;padding:0 12px;"> <div style="font-family:'Montserrat',sans-serif;font-size:30px;font-weight:700;color:#06054B;">30+</div> <div style="font-family:'Nunito Sans',sans-serif;font-size:13px;color:#64748b;margin-top:4px;">Tracking setups</div> </div> <div style="flex:1;min-width:150px;text-align:center;padding:0 12px;"> <div style="font-family:'Montserrat',sans-serif;font-size:30px;font-weight:700;color:#06054B;">15+</div> <div style="font-family:'Nunito Sans',sans-serif;font-size:13px;color:#64748b;margin-top:4px;">MMP setups</div> </div> <div style="flex:1;min-width:150px;text-align:center;padding:0 12px;"> <div style="font-family:'Montserrat',sans-serif;font-size:30px;font-weight:700;color:#06054B;">10+</div> <div style="font-family:'Nunito Sans',sans-serif;font-size:13px;color:#64748b;margin-top:4px;">Offline-conversion pipelines</div> </div> <div style="flex:1;min-width:150px;text-align:center;padding:0 12px;"> <div style="font-family:'Montserrat',sans-serif;font-size:30px;font-weight:700;color:#06054B;">3,000+</div> <div style="font-family:'Nunito Sans',sans-serif;font-size:13px;color:#64748b;margin-top:4px;">Events instrumented</div> </div></div> </div> </div> </section> <section class="vg-section" style="background:#f8f9fa;padding:72px 0;"> <div style="max-width:1000px;margin:0 auto;padding:0 24px;"> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;font-weight:600;color:#9431ff;letter-spacing:0.04em;margin:0 0 8px;">Sound familiar?</p> <h2 style="font-family:'Montserrat',sans-serif;font-size:38px;font-weight:700;letter-spacing:-0.44px;line-height:1.2;color:#06054B;margin:0 0 24px;">If you run growth or data at a mobility company, you've hit at least three of these</h2> <p style="font-family:'Nunito Sans',sans-serif;font-size:18px;line-height:1.7;color:#475569;max-width:760px;margin:0 0 28px;">These are measurement problems, not budget problems, and they are exactly where a media agency has nothing to offer.</p> <div class="vg-grid-2" style="display:grid;grid-template-columns:1fr 1fr;gap:16px;"><div style="display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:20px 22px;" class="vg-exec-card"> <span style="flex-shrink:0;width:38px;height:38px;border-radius:10px;background:rgba(148,49,255,0.1);display:flex;align-items:center;justify-content:center;"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="flex-shrink:0;"><path d="M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"/><line x1="12" y1="9" x2="12" y2="13"/><line x1="12" y1="17" x2="12.01" y2="17"/></svg></span> <div style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.6;color:#06054B;">You optimize to installs because completed-ride value is not measurable.</div> </div> <div style="display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:20px 22px;" class="vg-exec-card"> <span style="flex-shrink:0;width:38px;height:38px;border-radius:10px;background:rgba(148,49,255,0.1);display:flex;align-items:center;justify-content:center;"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="flex-shrink:0;"><path d="M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"/><line x1="12" y1="9" x2="12" y2="13"/><line x1="12" y1="17" x2="12.01" y2="17"/></svg></span> <div style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.6;color:#06054B;">Attribution broke after ATT and SKAdNetwork, and platform numbers no longer match reality.</div> </div> <div style="display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:20px 22px;" class="vg-exec-card"> <span style="flex-shrink:0;width:38px;height:38px;border-radius:10px;background:rgba(148,49,255,0.1);display:flex;align-items:center;justify-content:center;"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="flex-shrink:0;"><path d="M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"/><line x1="12" y1="9" x2="12" y2="13"/><line x1="12" y1="17" x2="12.01" y2="17"/></svg></span> <div style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.6;color:#06054B;">Rider and driver acquisition are measured separately, so the network is constantly out of balance.</div> </div> <div style="display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:20px 22px;" class="vg-exec-card"> <span style="flex-shrink:0;width:38px;height:38px;border-radius:10px;background:rgba(148,49,255,0.1);display:flex;align-items:center;justify-content:center;"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="flex-shrink:0;"><path d="M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"/><line x1="12" y1="9" x2="12" y2="13"/><line x1="12" y1="17" x2="12.01" y2="17"/></svg></span> <div style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.6;color:#06054B;">You cannot trust your true cost per completed ride.</div> </div> <div style="display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:20px 22px;" class="vg-exec-card"> <span style="flex-shrink:0;width:38px;height:38px;border-radius:10px;background:rgba(148,49,255,0.1);display:flex;align-items:center;justify-content:center;"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="flex-shrink:0;"><path d="M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"/><line x1="12" y1="9" x2="12" y2="13"/><line x1="12" y1="17" x2="12.01" y2="17"/></svg></span> <div style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.6;color:#06054B;">Ride, payment, and trip data live in tools that never agree.</div> </div> <div style="display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:20px 22px;" class="vg-exec-card"> <span style="flex-shrink:0;width:38px;height:38px;border-radius:10px;background:rgba(148,49,255,0.1);display:flex;align-items:center;justify-content:center;"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="flex-shrink:0;"><path d="M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"/><line x1="12" y1="9" x2="12" y2="13"/><line x1="12" y1="17" x2="12.01" y2="17"/></svg></span> <div style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.6;color:#06054B;">You are scaling spend on a signal you do not trust.</div> </div></div> </div> </section> <section class="vg-section" style="background:#fff;padding:72px 0 80px;"> <div style="max-width:1000px;margin:0 auto;padding:0 24px;"> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;font-weight:600;color:#9431ff;letter-spacing:0.04em;margin:0 0 8px;">The Challenge</p> <h2 style="font-family:'Montserrat',sans-serif;font-size:38px;font-weight:700;letter-spacing:-0.44px;line-height:1.2;color:#06054B;margin:0 0 24px;">Why mobility companies fly blind on rides</h2> <p style="font-family:'Nunito Sans',sans-serif;font-size:18px;line-height:1.7;color:#475569;max-width:760px;margin:0 0 28px;">Sometimes installs are too few. Far more often there are plenty and completed rides are unmeasurable, attribution is broken, and the two sides are not balanced in the data. These trace back to four structural problems.</p> <div class="vg-grid-2" style="display:grid;grid-template-columns:repeat(2,1fr);gap:24px;"><div class="vg-challenge-card" style="background:#06054B;border-radius:16px;padding:28px;"> <div style="display:flex;gap:14px;align-items:center;margin:0 0 14px;"> <span style="flex-shrink:0;width:42px;height:42px;border-radius:11px;background:rgba(192,132,252,0.14);display:flex;align-items:center;justify-content:center;"><svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="#c084fc" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="flex-shrink:0;"><polygon points="22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3"/></svg></span> <h3 style="font-family:'Montserrat',sans-serif;font-size:18px;font-weight:700;color:#fff;margin:0;">Installs, not rides</h3> </div> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.8;color:#c8cdd3;margin:0;">Without a completed-ride conversion schema, platforms optimize to installs and you cannot measure cost per completed ride, so spend finds cheap users who never ride.</p> </div> <div class="vg-challenge-card" style="background:#06054B;border-radius:16px;padding:28px;"> <div style="display:flex;gap:14px;align-items:center;margin:0 0 14px;"> <span style="flex-shrink:0;width:42px;height:42px;border-radius:11px;background:rgba(192,132,252,0.14);display:flex;align-items:center;justify-content:center;"><svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="#c084fc" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="flex-shrink:0;"><polyline points="22 12 18 12 15 21 9 3 6 12 2 12"/></svg></span> <h3 style="font-family:'Montserrat',sans-serif;font-size:18px;font-weight:700;color:#fff;margin:0;">Broken signal after privacy changes</h3> </div> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.8;color:#c8cdd3;margin:0;">ATT, SKAdNetwork, and cookie loss broke deterministic attribution. Without server-side events, MMP, and a designed schema, platforms optimize blind and true cost per ride cannot be measured.</p> </div> <div class="vg-challenge-card" style="background:#06054B;border-radius:16px;padding:28px;"> <div style="display:flex;gap:14px;align-items:center;margin:0 0 14px;"> <span style="flex-shrink:0;width:42px;height:42px;border-radius:11px;background:rgba(192,132,252,0.14);display:flex;align-items:center;justify-content:center;"><svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="#c084fc" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="flex-shrink:0;"><path d="M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"/><circle cx="9" cy="7" r="4"/><path d="M23 21v-2a4 4 0 0 0-3-3.87"/><path d="M16 3.13a4 4 0 0 1 0 7.75"/></svg></span> <h3 style="font-family:'Montserrat',sans-serif;font-size:18px;font-weight:700;color:#fff;margin:0;">Two sides measured separately</h3> </div> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.8;color:#c8cdd3;margin:0;">A mobility network needs riders and supply balanced, but most measurement treats each side in isolation, so you cannot see balance by zone or true cost and value per side.</p> </div> <div class="vg-challenge-card" style="background:#06054B;border-radius:16px;padding:28px;"> <div style="display:flex;gap:14px;align-items:center;margin:0 0 14px;"> <span style="flex-shrink:0;width:42px;height:42px;border-radius:11px;background:rgba(192,132,252,0.14);display:flex;align-items:center;justify-content:center;"><svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="#c084fc" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="flex-shrink:0;"><polygon points="12 2 2 7 12 12 22 7 12 2"/><polyline points="2 17 12 22 22 17"/><polyline points="2 12 12 17 22 12"/></svg></span> <h3 style="font-family:'Montserrat',sans-serif;font-size:18px;font-weight:700;color:#fff;margin:0;">Fragmented ride data</h3> </div> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.8;color:#c8cdd3;margin:0;">Ride, payment, trip, and marketing data sit in separate tools that disagree, so there is no trustworthy foundation for growth decisions.</p> </div></div> </div> </section> <section class="vg-section" style="background:#06054B;padding:80px 0;"> <div style="max-width:1000px;margin:0 auto;padding:0 24px;"> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;font-weight:600;color:#9431ff;letter-spacing:0.04em;margin:0 0 8px;">Why most agencies stall</p> <h2 style="font-family:'Montserrat',sans-serif;font-size:38px;font-weight:700;letter-spacing:-0.44px;line-height:1.2;color:#fff;margin:0 0 24px;">Why a typical media or analytics agency can't fix this</h2> <p style="font-family:'Nunito Sans',sans-serif;font-size:18px;line-height:1.7;color:#c8cdd3;max-width:820px;margin:0 0 12px;">Most agencies bolt a base pixel onto a mobility app and report a CPI. That cannot measure completed rides, survive privacy changes, or balance a two-sided network.</p> <div class="vg-grid-2" style="display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:24px 0 8px;"> <div style="font-family:'Montserrat',sans-serif;font-size:13px;font-weight:700;color:#f87171;text-transform:uppercase;letter-spacing:0.06em;">A typical media agency</div> <div style="font-family:'Montserrat',sans-serif;font-size:13px;font-weight:700;color:#34d399;text-transform:uppercase;letter-spacing:0.06em;">Velocity</div> </div> <div style="border-bottom:1px solid rgba(255,255,255,0.1);padding:24px 0;"> <div class="vg-grid-2" style="display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start;"> <div style="display:flex;gap:13px;align-items:flex-start;"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#f87171" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><line x1="18" y1="6" x2="6" y2="18"/><line x1="6" y1="6" x2="18" y2="18"/></svg><div><div style="font-family:'Montserrat',sans-serif;font-size:16px;font-weight:700;color:#fff;margin-bottom:5px;">Optimize to installs</div><div style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.7;color:#aab0cc;">A CPI that fills the app with non-riders.</div></div></div> <div style="display:flex;gap:13px;align-items:flex-start;"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#34d399" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><div><div style="font-family:'Montserrat',sans-serif;font-size:16px;font-weight:700;color:#fff;margin-bottom:5px;">Measure completed rides</div><div style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.7;color:#d4d8e8;">We design a completed-ride conversion schema so platforms optimize to rides, not installs.</div></div></div> </div> </div> <div style="border-bottom:1px solid rgba(255,255,255,0.1);padding:24px 0;"> <div class="vg-grid-2" style="display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start;"> <div style="display:flex;gap:13px;align-items:flex-start;"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#f87171" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><line x1="18" y1="6" x2="6" y2="18"/><line x1="6" y1="6" x2="18" y2="18"/></svg><div><div style="font-family:'Montserrat',sans-serif;font-size:16px;font-weight:700;color:#fff;margin-bottom:5px;">Set-and-forget tracking</div><div style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.7;color:#aab0cc;">A base pixel and default schema, never revisited.</div></div></div> <div style="display:flex;gap:13px;align-items:flex-start;"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#34d399" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><div><div style="font-family:'Montserrat',sans-serif;font-size:16px;font-weight:700;color:#fff;margin-bottom:5px;">Engineer the signal layer</div><div style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.7;color:#d4d8e8;">We design server-side events, MMP, and a conversion-value schema mapped to ride milestones.</div></div></div> </div> </div> <div style="border-bottom:1px solid rgba(255,255,255,0.1);padding:24px 0;"> <div class="vg-grid-2" style="display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start;"> <div style="display:flex;gap:13px;align-items:flex-start;"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#f87171" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><line x1="18" y1="6" x2="6" y2="18"/><line x1="6" y1="6" x2="18" y2="18"/></svg><div><div style="font-family:'Montserrat',sans-serif;font-size:16px;font-weight:700;color:#fff;margin-bottom:5px;">One-sided measurement</div><div style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.7;color:#aab0cc;">Riders and supply measured in isolation.</div></div></div> <div style="display:flex;gap:13px;align-items:flex-start;"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#34d399" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><div><div style="font-family:'Montserrat',sans-serif;font-size:16px;font-weight:700;color:#fff;margin-bottom:5px;">Two-sided measurement</div><div style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.7;color:#d4d8e8;">We instrument and attribute both sides so balance and true cost per side are visible.</div></div></div> </div> </div> <div style="border-bottom:1px solid rgba(255,255,255,0.1);padding:24px 0;"> <div class="vg-grid-2" style="display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start;"> <div style="display:flex;gap:13px;align-items:flex-start;"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#f87171" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><line x1="18" y1="6" x2="6" y2="18"/><line x1="6" y1="6" x2="18" y2="18"/></svg><div><div style="font-family:'Montserrat',sans-serif;font-size:16px;font-weight:700;color:#fff;margin-bottom:5px;">Data in dashboards</div><div style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.7;color:#aab0cc;">Numbers trapped in tools that disagree.</div></div></div> <div style="display:flex;gap:13px;align-items:flex-start;"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#34d399" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><div><div style="font-family:'Montserrat',sans-serif;font-size:16px;font-weight:700;color:#fff;margin-bottom:5px;">Trusted data foundation</div><div style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.7;color:#d4d8e8;">We build a foundation that unifies ride, payment, and marketing data.</div></div></div> </div> </div> <div style="border-bottom:1px solid rgba(255,255,255,0.1);padding:24px 0;"> <div class="vg-grid-2" style="display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start;"> <div style="display:flex;gap:13px;align-items:flex-start;"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#f87171" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><line x1="18" y1="6" x2="6" y2="18"/><line x1="6" y1="6" x2="18" y2="18"/></svg><div><div style="font-family:'Montserrat',sans-serif;font-size:16px;font-weight:700;color:#fff;margin-bottom:5px;">Trust platform numbers</div><div style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.7;color:#aab0cc;">Whatever the ad platform reports.</div></div></div> <div style="display:flex;gap:13px;align-items:flex-start;"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#34d399" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><div><div style="font-family:'Montserrat',sans-serif;font-size:16px;font-weight:700;color:#fff;margin-bottom:5px;">Measure true cost</div><div style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.7;color:#d4d8e8;">We reconcile platform, MMP, and warehouse data so true cost per ride is knowable.</div></div></div> </div> </div> </div> </section> <section id="approach" class="vg-section" style="background:#fff;padding:80px 0;"> <div style="max-width:1000px;margin:0 auto;padding:0 24px;"> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;font-weight:600;color:#9431ff;letter-spacing:0.04em;margin:0 0 8px;">Our Approach</p> <h2 style="font-family:'Montserrat',sans-serif;font-size:38px;font-weight:700;letter-spacing:-0.44px;line-height:1.2;color:#06054B;margin:0 0 24px;">How we build mobility growth infrastructure</h2> <p style="font-family:'Nunito Sans',sans-serif;font-size:18px;line-height:1.7;color:#475569;max-width:760px;margin:0 0 32px;">We sequence the work the way a measurable network is built: design the ride signal, rebuild measurement, instrument both sides, then make it trusted.</p> <div><div style="position:relative;padding-left:48px;padding-bottom:28px;"> <div style="position:absolute;left:0;top:0;width:32px;height:32px;border-radius:50%;background:#9431ff;color:#fff;font-family:'Montserrat',sans-serif;font-weight:600;display:flex;align-items:center;justify-content:center;font-size:15px;">1</div> <h3 style="font-family:'Montserrat',sans-serif;font-size:20px;font-weight:600;color:#06054B;margin:2px 0 8px;">Design the completed-ride signal</h3> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.8;color:#06054B;margin:0;">Build a conversion-value schema mapped to ride milestones (install, signup, first ride, repeat) so platforms can optimize to completed-ride value, not installs.</p> </div> <div style="position:relative;padding-left:48px;padding-bottom:28px;"> <div style="position:absolute;left:0;top:0;width:32px;height:32px;border-radius:50%;background:#9431ff;color:#fff;font-family:'Montserrat',sans-serif;font-weight:600;display:flex;align-items:center;justify-content:center;font-size:15px;">2</div> <h3 style="font-family:'Montserrat',sans-serif;font-size:20px;font-weight:600;color:#06054B;margin:2px 0 8px;">Rebuild measurement</h3> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.8;color:#06054B;margin:0;">Implement server-side events via Conversions API, set up MMP (Adjust or AppsFlyer) server-to-server, and configure SKAdNetwork and Consent Mode so the signal survives privacy changes.</p> </div> <div style="position:relative;padding-left:48px;padding-bottom:28px;"> <div style="position:absolute;left:0;top:0;width:32px;height:32px;border-radius:50%;background:#9431ff;color:#fff;font-family:'Montserrat',sans-serif;font-weight:600;display:flex;align-items:center;justify-content:center;font-size:15px;">3</div> <h3 style="font-family:'Montserrat',sans-serif;font-size:20px;font-weight:600;color:#06054B;margin:2px 0 8px;">Instrument both sides</h3> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.8;color:#06054B;margin:0;">Measure and attribute riders and supply separately and by zone, so network balance, and true cost and value per side, are visible.</p> </div> <div style="position:relative;padding-left:48px;padding-bottom:28px;"> <div style="position:absolute;left:0;top:0;width:32px;height:32px;border-radius:50%;background:#9431ff;color:#fff;font-family:'Montserrat',sans-serif;font-weight:600;display:flex;align-items:center;justify-content:center;font-size:15px;">4</div> <h3 style="font-family:'Montserrat',sans-serif;font-size:20px;font-weight:600;color:#06054B;margin:2px 0 8px;">Unify the ride data</h3> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.8;color:#06054B;margin:0;">Connect ride, payment, trip, and marketing data into a single source of truth, ending manual stitching and disagreement.</p> </div> <div style="position:relative;padding-left:48px;padding-bottom:0;"> <div style="position:absolute;left:0;top:0;width:32px;height:32px;border-radius:50%;background:#9431ff;color:#fff;font-family:'Montserrat',sans-serif;font-weight:600;display:flex;align-items:center;justify-content:center;font-size:15px;">5</div> <h3 style="font-family:'Montserrat',sans-serif;font-size:20px;font-weight:600;color:#06054B;margin:2px 0 8px;">Make it trusted and scalable</h3> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.8;color:#06054B;margin:0;">Validate accuracy end to end and document the stack, so the measurement foundation holds as the network and spend scale.</p> </div></div> </div> </section> <span id="arsenal"></span> <section class="vg-section" style="background:#f8f9fa;padding:80px 0;"> <div style="max-width:1100px;margin:0 auto;padding:0 24px;"> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;font-weight:600;color:#9431ff;letter-spacing:0.04em;margin:0 0 8px;">The full stack</p> <h2 style="font-family:'Montserrat',sans-serif;font-size:38px;font-weight:700;letter-spacing:-0.44px;line-height:1.2;color:#06054B;margin:0 0 24px;">Beyond a base pixel</h2> <p style="font-family:'Nunito Sans',sans-serif;font-size:18px;line-height:1.7;color:#475569;max-width:820px;margin:0 0 32px;">A measurable mobility network is built from a ride conversion schema, server-side signal, two-sided measurement, and a data foundation. We build all of it.</p> <div class="vg-grid-3" style="display:grid;grid-template-columns:repeat(3,1fr);gap:20px;"><div class="vg-exec-card" style="background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:26px;"> <div style="font-family:'Montserrat',sans-serif;font-size:17px;font-weight:700;color:#06054B;margin:0 0 14px;display:flex;align-items:center;gap:10px;"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="flex-shrink:0;"><rect x="4" y="4" width="16" height="16" rx="2"/><rect x="9" y="9" width="6" height="6"/><line x1="9" y1="1" x2="9" y2="4"/><line x1="15" y1="1" x2="15" y2="4"/><line x1="9" y1="20" x2="9" y2="23"/><line x1="15" y1="20" x2="15" y2="23"/><line x1="20" y1="9" x2="23" y2="9"/><line x1="20" y1="14" x2="23" y2="14"/><line x1="1" y1="9" x2="4" y2="9"/><line x1="1" y1="14" x2="4" y2="14"/></svg>Tracking &amp; signal</div> <ul style="margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:9px;"> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>Completed-ride conversion-value schema</span></li> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>Server-side events via Conversions API</span></li> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>MMP setup and server-to-server (Adjust, AppsFlyer)</span></li> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>SKAdNetwork and Consent Mode v2</span></li> </ul> </div> <div class="vg-exec-card" style="background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:26px;"> <div style="font-family:'Montserrat',sans-serif;font-size:17px;font-weight:700;color:#06054B;margin:0 0 14px;display:flex;align-items:center;gap:10px;"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="flex-shrink:0;"><path d="M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"/><circle cx="9" cy="7" r="4"/><path d="M23 21v-2a4 4 0 0 0-3-3.87"/><path d="M16 3.13a4 4 0 0 1 0 7.75"/></svg>Two-sided measurement</div> <ul style="margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:9px;"> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>Separate rider and driver attribution</span></li> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>Cost and value per side</span></li> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>Balance and density by zone</span></li> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>Cohort and retention by side</span></li> </ul> </div> <div class="vg-exec-card" style="background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:26px;"> <div style="font-family:'Montserrat',sans-serif;font-size:17px;font-weight:700;color:#06054B;margin:0 0 14px;display:flex;align-items:center;gap:10px;"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="flex-shrink:0;"><polygon points="12 2 2 7 12 12 22 7 12 2"/><polyline points="2 17 12 22 22 17"/><polyline points="2 12 12 17 22 12"/></svg>Data &amp; foundation</div> <ul style="margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:9px;"> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>Ride, payment, and trip data unification</span></li> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>Single source of truth</span></li> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>Data models and pipelines</span></li> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>Marketing-to-ride connection</span></li> </ul> </div> <div class="vg-exec-card" style="background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:26px;"> <div style="font-family:'Montserrat',sans-serif;font-size:17px;font-weight:700;color:#06054B;margin:0 0 14px;display:flex;align-items:center;gap:10px;"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="flex-shrink:0;"><polygon points="22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3"/></svg>Funnel &amp; economics</div> <ul style="margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:9px;"> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>Install-to-first-ride measurement</span></li> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>Repeat-ride and LTV by side</span></li> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>Unit economics by zone</span></li> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>Network-health metrics</span></li> </ul> </div> <div class="vg-exec-card" style="background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:26px;"> <div style="font-family:'Montserrat',sans-serif;font-size:17px;font-weight:700;color:#06054B;margin:0 0 14px;display:flex;align-items:center;gap:10px;"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="flex-shrink:0;"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"/></svg>Quality &amp; governance</div> <ul style="margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:9px;"> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>End-to-end accuracy validation</span></li> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>Event taxonomy and standards</span></li> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>Data-quality monitoring</span></li> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>Documentation and governance</span></li> </ul> </div> <div class="vg-exec-card" style="background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:26px;"> <div style="font-family:'Montserrat',sans-serif;font-size:17px;font-weight:700;color:#06054B;margin:0 0 14px;display:flex;align-items:center;gap:10px;"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="flex-shrink:0;"><line x1="18" y1="20" x2="18" y2="10"/><line x1="12" y1="20" x2="12" y2="4"/><line x1="6" y1="20" x2="6" y2="14"/></svg>Reporting &amp; decisions</div> <ul style="margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:9px;"> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>Trustworthy cost per completed ride</span></li> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>Two-sided balance reporting</span></li> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>Marketing contribution by side</span></li> <li style="display:flex;gap:9px;align-items:flex-start;font-family:'Nunito Sans',sans-serif;font-size:14.5px;line-height:1.55;color:#475569;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2.5" style="flex-shrink:0;margin-top:2px;"><polyline points="20 6 9 17 4 12"/></svg><span>Scale-readiness diagnostics</span></li> </ul> </div></div> </div> </section> <section class="vg-section" style="background:#fff;padding:80px 0;"> <div style="max-width:1000px;margin:0 auto;padding:0 24px;"> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;font-weight:600;color:#9431ff;letter-spacing:0.04em;margin:0 0 8px;">What We Deliver</p> <h2 style="font-family:'Montserrat',sans-serif;font-size:38px;font-weight:700;letter-spacing:-0.44px;line-height:1.2;color:#06054B;margin:0 0 24px;">What the engagement includes</h2> <div class="vg-grid-2" style="display:grid;grid-template-columns:repeat(2,1fr);gap:24px;"><div class="vg-exec-card" style="background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:28px;"> <div style="display:flex;gap:14px;align-items:center;margin:0 0 12px;"> <span style="flex-shrink:0;width:42px;height:42px;border-radius:11px;background:rgba(148,49,255,0.1);display:flex;align-items:center;justify-content:center;"><svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="flex-shrink:0;"><rect x="4" y="4" width="16" height="16" rx="2"/><rect x="9" y="9" width="6" height="6"/><line x1="9" y1="1" x2="9" y2="4"/><line x1="15" y1="1" x2="15" y2="4"/><line x1="9" y1="20" x2="9" y2="23"/><line x1="15" y1="20" x2="15" y2="23"/><line x1="20" y1="9" x2="23" y2="9"/><line x1="20" y1="14" x2="23" y2="14"/><line x1="1" y1="9" x2="4" y2="9"/><line x1="1" y1="14" x2="4" y2="14"/></svg></span> <h3 style="font-family:'Montserrat',sans-serif;font-size:18px;font-weight:700;color:#06054B;margin:0;">Ride-signal rebuild</h3> </div> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.7;color:#06054B;margin:0;">A completed-ride conversion schema, server-side events, and MMP server-to-server, verified accurate before scaling.</p> </div> <div class="vg-exec-card" style="background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:28px;"> <div style="display:flex;gap:14px;align-items:center;margin:0 0 12px;"> <span style="flex-shrink:0;width:42px;height:42px;border-radius:11px;background:rgba(148,49,255,0.1);display:flex;align-items:center;justify-content:center;"><svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="flex-shrink:0;"><path d="M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"/><circle cx="9" cy="7" r="4"/><path d="M23 21v-2a4 4 0 0 0-3-3.87"/><path d="M16 3.13a4 4 0 0 1 0 7.75"/></svg></span> <h3 style="font-family:'Montserrat',sans-serif;font-size:18px;font-weight:700;color:#06054B;margin:0;">Two-sided measurement model</h3> </div> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.7;color:#06054B;margin:0;">Separate, trustworthy attribution and economics for riders and supply, with balance by zone.</p> </div> <div class="vg-exec-card" style="background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:28px;"> <div style="display:flex;gap:14px;align-items:center;margin:0 0 12px;"> <span style="flex-shrink:0;width:42px;height:42px;border-radius:11px;background:rgba(148,49,255,0.1);display:flex;align-items:center;justify-content:center;"><svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="flex-shrink:0;"><polygon points="12 2 2 7 12 12 22 7 12 2"/><polyline points="2 17 12 22 22 17"/><polyline points="2 12 12 17 22 12"/></svg></span> <h3 style="font-family:'Montserrat',sans-serif;font-size:18px;font-weight:700;color:#06054B;margin:0;">Unified ride-data foundation</h3> </div> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.7;color:#06054B;margin:0;">Ride, payment, trip, and marketing data connected into a single source of truth.</p> </div> <div class="vg-exec-card" style="background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:28px;"> <div style="display:flex;gap:14px;align-items:center;margin:0 0 12px;"> <span style="flex-shrink:0;width:42px;height:42px;border-radius:11px;background:rgba(148,49,255,0.1);display:flex;align-items:center;justify-content:center;"><svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="#9431ff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="flex-shrink:0;"><line x1="18" y1="20" x2="18" y2="10"/><line x1="12" y1="20" x2="12" y2="4"/><line x1="6" y1="20" x2="6" y2="14"/></svg></span> <h3 style="font-family:'Montserrat',sans-serif;font-size:18px;font-weight:700;color:#06054B;margin:0;">Trusted reporting</h3> </div> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.7;color:#06054B;margin:0;">Trustworthy cost per completed ride and two-sided balance reporting for growth decisions.</p> </div></div> </div> </section> <section class="vg-section" style="background:#06054B;padding:80px 0;"> <div style="max-width:1000px;margin:0 auto;padding:0 24px;"> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;font-weight:600;color:#9431ff;letter-spacing:0.04em;margin:0 0 8px;">Proof</p> <h2 style="font-family:'Montserrat',sans-serif;font-size:38px;font-weight:700;letter-spacing:-0.44px;color:#fff;margin:0 0 32px;">Proven measurement work for an advertiser</h2> <div class="vg-grid-3" style="display:grid;grid-template-columns:repeat(1,1fr);gap:20px;margin-bottom:32px;"><div class="vg-metric-card" style="background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.12);border-radius:16px;padding:28px;text-align:center;"> <div style="font-family:'Montserrat',sans-serif;font-size:44px;font-weight:600;color:#fff;"><span class="vg-anim-num" data-value="113" data-decimals="0">0</span>%</div> <div style="font-family:'Nunito Sans',sans-serif;font-size:14px;color:#c8cdd3;margin-top:8px;">Measured ROAS improvement (adjacent sector)</div> </div></div> <a href="https://www.velocitygrowth.ae/case-studies/offline-conversion-tracking-events-uae" style="display:block;text-decoration:none;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.12);border-radius:16px;padding:28px;" class="vg-card"> <div style="font-family:'Nunito Sans',sans-serif;font-size:12px;font-weight:600;color:#9431ff;text-transform:uppercase;letter-spacing:0.06em;margin-bottom:8px;">Case study</div> <div style="font-family:'Montserrat',sans-serif;font-size:20px;font-weight:600;color:#fff;margin-bottom:6px;">Same service, adjacent sector: 113% measured ROAS improvement from offline-conversion tracking &rarr;</div> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.7;color:#c8cdd3;margin:0;">A mobility-specific case study is coming; here is our same-service measurement work in an adjacent UAE sector. By rebuilding the conversion signal, we delivered a 113 percent measured ROAS improvement, the same signal discipline mobility needs to measure completed rides.</p> </a> </div> </section> <section id="audit" class="vg-section" style="background:#f8f9fa;padding:80px 0;"> <div style="max-width:1000px;margin:0 auto;padding:0 24px;"> <div class="vg-takeaway-grid" style="display:grid;grid-template-columns:1fr 480px;gap:48px;align-items:start;"> <div> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;font-weight:600;color:#9431ff;letter-spacing:0.04em;margin:0 0 8px;">The takeaway</p> <h2 style="font-family:'Montserrat',sans-serif;font-size:28px;font-weight:700;letter-spacing:-0.44px;line-height:1.2;color:#06054B;margin:0 0 24px;">If you cannot trust your cost per completed ride, you cannot scale on it</h2> <p style="font-family:'Nunito Sans',sans-serif;font-size:18px;line-height:1.7;color:#06054B;border-left:3px solid #9431ff;padding-left:20px;margin:0;">Tell us how you measure completed rides and both sides of the network today, and whether platform numbers still match reality after privacy changes. We will show you where the signal and data are broken and the highest-leverage way to build a foundation you can scale on. The first conversation is a specific audit, not a pitch.</p> </div> <div style="background:#fff;border-radius:16px;padding:28px 28px 32px;border:1px solid #e2e8f0;box-shadow:0 8px 32px rgba(6,5,75,0.08);position:sticky;top:24px;" class="vg-form-card"> <h3 style="font-family:'Montserrat',sans-serif;font-size:20px;font-weight:700;color:#06054B;margin:0 0 20px;">Get a custom growth audit</h3> <div id="vg-cta-form-container"> <form id="vg-lead-form" onsubmit="return handleFormSubmit(event)" style="display:flex;flex-direction:column;gap:14px;"> <div style="display:grid;grid-template-columns:1fr 1fr;gap:12px;"> <div><label style="font-family:'Nunito Sans',sans-serif;font-size:13px;font-weight:600;color:#06054B;display:block;margin-bottom:5px;">Name *</label><input type="text" name="name" required onfocus="pushFormFocus('name')" style="width:100%;padding:10px 14px;border:1px solid #e2e8f0;border-radius:8px;font-family:'Nunito Sans',sans-serif;font-size:14px;color:#06054B;box-sizing:border-box;transition:border-color 0.2s;" onfocusin="this.style.borderColor='#9431ff'" onfocusout="this.style.borderColor='#e2e8f0'" /></div> <div><label style="font-family:'Nunito Sans',sans-serif;font-size:13px;font-weight:600;color:#06054B;display:block;margin-bottom:5px;">Work Email *</label><input type="email" name="email" required onfocus="pushFormFocus('email')" style="width:100%;padding:10px 14px;border:1px solid #e2e8f0;border-radius:8px;font-family:'Nunito Sans',sans-serif;font-size:14px;color:#06054B;box-sizing:border-box;transition:border-color 0.2s;" onfocusin="this.style.borderColor='#9431ff'" onfocusout="this.style.borderColor='#e2e8f0'" /></div> </div> <div><label style="font-family:'Nunito Sans',sans-serif;font-size:13px;font-weight:600;color:#06054B;display:block;margin-bottom:5px;">Company *</label><input type="text" name="company" required onfocus="pushFormFocus('company')" style="width:100%;padding:10px 14px;border:1px solid #e2e8f0;border-radius:8px;font-family:'Nunito Sans',sans-serif;font-size:14px;color:#06054B;box-sizing:border-box;transition:border-color 0.2s;" onfocusin="this.style.borderColor='#9431ff'" onfocusout="this.style.borderColor='#e2e8f0'" /></div> <div><label style="font-family:'Nunito Sans',sans-serif;font-size:13px;font-weight:600;color:#06054B;display:block;margin-bottom:5px;">3 core problems you'd want us to take a look at</label><textarea name="message" rows="3" onfocus="pushFormFocus('message')" style="width:100%;padding:10px 14px;border:1px solid #e2e8f0;border-radius:8px;font-family:'Nunito Sans',sans-serif;font-size:14px;color:#06054B;box-sizing:border-box;transition:border-color 0.2s;resize:vertical;"></textarea></div> <button type="submit" style="width:100%;padding:14px 32px;background:#9431ff;color:#fff;font-family:'Nunito Sans',sans-serif;font-size:16px;font-weight:600;border:none;border-radius:100px;cursor:pointer;margin-top:4px;box-shadow:0 4px 16px rgba(148,49,255,0.3);" onmouseover="this.style.background='#7a28d6'" onmouseout="this.style.background='#9431ff'">Book Your Free Discovery Call</button> </form> </div> <div id="vg-thank-you" style="display:none;text-align:center;padding:24px 0;"> <div style="font-family:'Montserrat',sans-serif;font-size:18px;font-weight:700;color:#06054B;margin-bottom:8px;">Thank you. We'll be in touch within 24 hours.</div> <div style="font-family:'Nunito Sans',sans-serif;font-size:14px;color:#64748b;">Check your inbox for a confirmation from the Velocity Growth team.</div> </div> <div style="display:flex;align-items:center;justify-content:center;gap:16px;margin-top:16px;"> <div style="display:flex;align-items:center;gap:5px;"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="#22c55e" stroke-width="2"><polyline points="20 6 9 17 4 12"/></svg><span style="font-family:'Nunito Sans',sans-serif;font-size:12px;color:#64748b;">No commitment</span></div> <div style="display:flex;align-items:center;gap:5px;"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="#22c55e" stroke-width="2"><polyline points="20 6 9 17 4 12"/></svg><span style="font-family:'Nunito Sans',sans-serif;font-size:12px;color:#64748b;">Response within 24hrs</span></div> </div> </div> </div> </div> </section> <section class="vg-section" style="background:#fff;padding:80px 0;"> <div style="max-width:1000px;margin:0 auto;padding:0 24px;"> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;font-weight:600;color:#9431ff;letter-spacing:0.04em;margin:0 0 8px;">FAQ</p> <h2 style="font-family:'Montserrat',sans-serif;font-size:38px;font-weight:700;letter-spacing:-0.44px;line-height:1.2;color:#06054B;margin:0 0 24px;">Questions mobility teams ask us</h2> <details style="background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px 24px;margin-bottom:14px;" class="vg-faq"> <summary style="font-family:'Montserrat',sans-serif;font-size:18px;font-weight:600;color:#06054B;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;">What is growth infrastructure for a mobility company?<span class="vg-chevron" style="transition:transform 0.2s;color:#9431ff;">&#9662;</span></summary> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.7;color:#06054B;margin:14px 0 0;">It is the tracking, signal, and data foundation that makes a two-sided network measurable: a completed-ride conversion schema, server-side events and MMP that survive privacy changes, separate rider and supply attribution, and a unified ride-data foundation. It makes completed-ride value and network balance measurable so you can scale on trusted numbers.</p> </details> <details style="background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px 24px;margin-bottom:14px;" class="vg-faq"> <summary style="font-family:'Montserrat',sans-serif;font-size:18px;font-weight:600;color:#06054B;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;">Why can we only measure installs, not rides?<span class="vg-chevron" style="transition:transform 0.2s;color:#9431ff;">&#9662;</span></summary> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.7;color:#06054B;margin:14px 0 0;">Because there is no completed-ride conversion schema feeding the platforms, so they optimize to installs. We design a schema mapped to ride milestones and implement server-side events and MMP so completed-ride value becomes measurable and optimizable.</p> </details> <details style="background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px 24px;margin-bottom:14px;" class="vg-faq"> <summary style="font-family:'Montserrat',sans-serif;font-size:18px;font-weight:600;color:#06054B;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;">How do you fix attribution after ATT and SKAdNetwork?<span class="vg-chevron" style="transition:transform 0.2s;color:#9431ff;">&#9662;</span></summary> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.7;color:#06054B;margin:14px 0 0;">We design a SKAdNetwork conversion-value schema mapped to ride milestones, implement Conversions API server-side, set up MMP server-to-server, and configure Consent Mode, so completed-ride value is measurable again after privacy changes.</p> </details> <details style="background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px 24px;margin-bottom:14px;" class="vg-faq"> <summary style="font-family:'Montserrat',sans-serif;font-size:18px;font-weight:600;color:#06054B;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;">How do you measure both sides of the network?<span class="vg-chevron" style="transition:transform 0.2s;color:#9431ff;">&#9662;</span></summary> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.7;color:#06054B;margin:14px 0 0;">We instrument and attribute riders and supply separately and by zone, so you can see network balance and the true cost and value of acquiring a rider versus supply, rather than a single blended number.</p> </details> <details style="background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px 24px;margin-bottom:14px;" class="vg-faq"> <summary style="font-family:'Montserrat',sans-serif;font-size:18px;font-weight:600;color:#06054B;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;">Do you unify the ride data too?<span class="vg-chevron" style="transition:transform 0.2s;color:#9431ff;">&#9662;</span></summary> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.7;color:#06054B;margin:14px 0 0;">Yes. We connect ride, payment, trip, and marketing data into a single source of truth, ending manual stitching and disagreement so growth decisions are grounded in trustworthy numbers.</p> </details> <details style="background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px 24px;margin-bottom:14px;" class="vg-faq"> <summary style="font-family:'Montserrat',sans-serif;font-size:18px;font-weight:600;color:#06054B;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;">Which mobility businesses do you work with?<span class="vg-chevron" style="transition:transform 0.2s;color:#9431ff;">&#9662;</span></summary> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;line-height:1.7;color:#06054B;margin:14px 0 0;">Ride-hailing, micro-mobility, delivery, and transport platforms across the UAE and GCC. The conversion schema, two-sided measurement, and data foundation are tailored to your network model and markets.</p> </details> </div> </section> <section class="vg-section" style="background:#f8f9fa;padding:80px 0;"> <div style="max-width:1000px;margin:0 auto;padding:0 24px;"> <p style="font-family:'Nunito Sans',sans-serif;font-size:16px;font-weight:600;color:#9431ff;letter-spacing:0.04em;margin:0 0 8px;">Keep exploring</p> <h2 style="font-family:'Montserrat',sans-serif;font-size:38px;font-weight:700;letter-spacing:-0.44px;line-height:1.2;color:#06054B;margin:0 0 24px;">Related from Velocity</h2> <div class="vg-grid-3" style="display:grid;grid-template-columns:repeat(3,1fr);gap:20px;"><a href="https://www.velocitygrowth.ae/services/growth-infrastructure-measurement-tracking" style="text-decoration:none;display:block;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px 24px;" class="vg-card"> <div style="font-family:'Nunito Sans',sans-serif;font-size:12px;font-weight:600;color:#9431ff;text-transform:uppercase;letter-spacing:0.06em;margin-bottom:6px;">Service</div> <div style="font-family:'Montserrat',sans-serif;font-size:17px;font-weight:600;color:#06054B;">Growth Infrastructure &amp; Measurement &rarr;</div> </a> <a href="https://www.velocitygrowth.ae/industries/mobility-transport" style="text-decoration:none;display:block;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px 24px;" class="vg-card"> <div style="font-family:'Nunito Sans',sans-serif;font-size:12px;font-weight:600;color:#9431ff;text-transform:uppercase;letter-spacing:0.06em;margin-bottom:6px;">Industry</div> <div style="font-family:'Montserrat',sans-serif;font-size:17px;font-weight:600;color:#06054B;">Growth Marketing for Mobility &amp; Transport &rarr;</div> </a> <a href="https://www.velocitygrowth.ae/case-studies/offline-conversion-tracking-events-uae" style="text-decoration:none;display:block;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px 24px;" class="vg-card"> <div style="font-family:'Nunito Sans',sans-serif;font-size:12px;font-weight:600;color:#9431ff;text-transform:uppercase;letter-spacing:0.06em;margin-bottom:6px;">Case study</div> <div style="font-family:'Montserrat',sans-serif;font-size:17px;font-weight:600;color:#06054B;">Offline conversions: 113% measured ROAS (adjacent) &rarr;</div> </a></div> </div> </section> </article> </main>
{"@context":"https://schema.org","@graph":[{"@type":"ProfessionalService","@id":"https://www.velocitygrowth.ae/#organization","name":"Velocity Growth","url":"https://www.velocitygrowth.ae","description":"Velocity Growth is a full-stack growth marketing agency headquartered in Dubai, UAE that helps startups, scaleups, and enterprises solve complex growth challenges across 30+ markets.","areaServed":"GCC, MENA, Africa, South Asia, Europe, Southeast Asia, US, UK, Australia"},{"@type":"WebPage","@id":"https://www.velocitygrowth.ae/expertise/growth-infrastructure-for-mobility-transport#webpage","url":"https://www.velocitygrowth.ae/expertise/growth-infrastructure-for-mobility-transport","name":"Growth Infrastructure for Mobility & Transport in the UAE | Velocity Growth","description":"Mobility growth infrastructure that makes completed rides and both sides of the network measurable: completed-ride schema, server-side tracking, MMP, and a unified data foundation.","isPartOf":{"@id":"https://www.velocitygrowth.ae/#website"},"about":{"@id":"https://www.velocitygrowth.ae/#organization"}},{"@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://www.velocitygrowth.ae"},{"@type":"ListItem","position":2,"name":"Expertise","item":"https://www.velocitygrowth.ae/expertise"},{"@type":"ListItem","position":3,"name":"Growth Infrastructure for Mobility","item":"https://www.velocitygrowth.ae/expertise/growth-infrastructure-for-mobility-transport"}]},{"@type":"FAQPage","mainEntity":[{"@type":"Question","name":"What is growth infrastructure for a mobility company?","acceptedAnswer":{"@type":"Answer","text":"It is the tracking, signal, and data foundation that makes a two-sided network measurable: a completed-ride conversion schema, server-side events and MMP that survive privacy changes, separate rider and supply attribution, and a unified ride-data foundation. It makes completed-ride value and network balance measurable so you can scale on trusted numbers."}},{"@type":"Question","name":"Why can we only measure installs, not rides?","acceptedAnswer":{"@type":"Answer","text":"Because there is no completed-ride conversion schema feeding the platforms, so they optimize to installs. We design a schema mapped to ride milestones and implement server-side events and MMP so completed-ride value becomes measurable and optimizable."}},{"@type":"Question","name":"How do you fix attribution after ATT and SKAdNetwork?","acceptedAnswer":{"@type":"Answer","text":"We design a SKAdNetwork conversion-value schema mapped to ride milestones, implement Conversions API server-side, set up MMP server-to-server, and configure Consent Mode, so completed-ride value is measurable again after privacy changes."}},{"@type":"Question","name":"How do you measure both sides of the network?","acceptedAnswer":{"@type":"Answer","text":"We instrument and attribute riders and supply separately and by zone, so you can see network balance and the true cost and value of acquiring a rider versus supply, rather than a single blended number."}},{"@type":"Question","name":"Do you unify the ride data too?","acceptedAnswer":{"@type":"Answer","text":"Yes. We connect ride, payment, trip, and marketing data into a single source of truth, ending manual stitching and disagreement so growth decisions are grounded in trustworthy numbers."}},{"@type":"Question","name":"Which mobility businesses do you work with?","acceptedAnswer":{"@type":"Answer","text":"Ride-hailing, micro-mobility, delivery, and transport platforms across the UAE and GCC. The conversion schema, two-sided measurement, and data foundation are tailored to your network model and markets."}}]}]}