PageSourceSearch

https://www.journify.io/product/

html journify.io collected 2026-09-24 08:44:38 UTC 240,760 bytes, 449 lines download raw bytes

1<!DOCTYPE html><html lang="en"> <head><meta content="width=device-width, initial-scale=1" name="viewport"><meta name="viewport" content="width=device-width, initial-scale=1"><meta charset="utf-8"><title>Product | Journify</title><meta content="Journify captures conversion data from your website, CRM, and backend, validates signal quality, and delivers it toad platforms in real time." name="description"><meta content="Product | Journify" property="og:title"><meta content="Journify captures conversion data from your website, CRM, and backend, validates signal quality, and delivers it toad platforms in real time." property="og:description"><meta content="https://www.journify.io/images/social-media-identity/default.png" property="og:image"><meta content="Product | Journify" property="twitter:title"><meta content="Journify captures conversion data from your website, CRM, and backend, validates signal quality, and delivers it toad platforms in real time." property="twitter:description"><meta content="https://www.journify.io/images/social-media-identity/default.png" property="twitter:image"><meta property="og:type" content="website"><meta content="summary_large_image" name="twitter:card"><link rel="canonical" href="https://www.journify.io/product/"><meta name="generator" content="Astro v5.18.1"><link rel="sitemap" href="/sitemap-index.xml"><link href="/favicon.png" rel="shortcut icon" type="image/png"><link href="/images/webclip.png" rel="apple-touch-icon"><!-- Google Consent Mode -->
1<script>
2  window.dataLayer = window.dataLayer || [];
3
4  function gtag() {
5    dataLayer.push(arguments);
6  }
7
8  gtag('consent', 'default', {
9    ad_storage: 'denied',
10    ad_user_data: 'denied',
11    ad_personalization: 'denied',
12    analytics_storage: 'denied',
13    functionality_storage: 'denied',
14    personalization_storage: 'denied',
15    security_storage: 'granted',
16    wait_for_update: 2000,
17  });
18  gtag('set', 'ads_data_redaction', true);
19  gtag('set', 'url_passthrough', true);
20
21  function getGoogleConsentState(consent) {
22    const accepted = consent.accepted || [];
23    const categories = consent.categories || {};
24    const analyticsGranted = categories.analytics || accepted.includes('analytics');
25    const adsGranted =
26      categories.advertisement ||
27      categories.marketing ||
28      accepted.includes('advertisement') ||
29      accepted.includes('marketing');
30
31    return {
32      ad_storage: adsGranted ? 'granted' : 'denied',
33      ad_user_data: adsGranted ? 'granted' : 'denied',
34      ad_personalization: adsGranted ? 'granted' : 'denied',
35      analytics_storage: analyticsGranted ? 'granted' : 'denied',
36      functionality_storage:
37        categories.functional || accepted.includes('functional') ? 'granted' : 'denied',
38      personalization_storage:
39        categories.preferences || accepted.includes('preferences') ? 'granted' : 'denied',
40      security_storage: 'granted',
41    };
42  }
43
44  function updateGoogleConsent(eventData) {
45    if (!eventData.detail) return;
46
47    gtag('consent', 'update', getGoogleConsentState(eventData.detail));
48  }
49
50  document.addEventListener('cookieyes_banner_load', updateGoogleConsent);
51  document.addEventListener('cookieyes_consent_update', updateGoogleConsent);
52</script>
52 <!-- End Google Consent Mode --><!-- Google Tag Manager -->
52<script>
53  (function (w, d, s, l, i) {
54    w[l] = w[l] || [];
55    w[l].push({ 'gtm.start': new Date().getTime(), event: 'gtm.js' });
56    var f = d.getElementsByTagName(s)[0];
57    var j = d.createElement(s);
58    var dl = l != 'dataLayer' ? '&l=' + l : '';
59    j.async = true;
60    j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl;
61    f.parentNode.insertBefore(j, f);
62  })(window, document, 'script', 'dataLayer', 'GTM-W5BZ6PM');
63</script>
63 <!-- End Google Tag Manager -->
vendor: 63 bytes, line 63
63<script async src="https://www.googletagmanager.com/gtag/js?id=
63G-G691KB233H
vendor: 12 bytes, line 63
63"></script> 
63<script type="text/javascript">
64  gtag('js', new Date());
65  gtag('set', 'developer_id.dZGVlNj', true);
66  gtag('config', 'G-G691KB233H');
67</script>
67<script id="cookieyes" type="text/javascript" src="https://cdn-cookieyes.com/client_data/4c0a70e548af7c515a543a78/script.js" integrity="sha384-kCCOJ/T89iI3UvoApiFOLL4zeBD/Z+ER29cVaxJgYNBcTy2acaFrap9jYrsYamuB" crossorigin="anonymous"></script>
67<script>
68  function initApollo() {
69    var n = Math.random().toString(36).substring(7),
70      o = document.createElement('script');
71    ((o.src = 'https://assets.apollo.io/micro/website-tracker/tracker.iife.js?nocache=' + n),
72      (o.async = !0),
73      (o.defer = !0),
74      (o.onload = function () {
75        window.trackingFunctions.onLoad({
76          appId: '67f3ce2a94f148001de04043',
77        });
78      }),
79      document.head.appendChild(o));
80  }
81  initApollo();
82</script>
82<script type="text/javascript" data-cookieyes="cookieyes-analytics">(function(){const API_KEY = "c92c3d9ab841d012fa436415c0576365";
83
84  !(function () {
85    'use strict';
86    !(function (e, t) {
87      var r = e.amplitude || { _q: [], _iq: {} };
88      if (r.invoked)
89        e.console && console.error && console.error('Amplitude snippet has been loaded.');
90      else {
91        var n = function (e, t) {
92            e.prototype[t] = function () {
93              return (
94                this._q.push({
95                  name: t,
96                  args: Array.prototype.slice.call(arguments, 0),
97                }),
98                this
99              );
100            };
101          },
102          s = function (e, t, r) {
103            return function (n) {
104              e._q.push({
105                name: t,
106                args: Array.prototype.slice.call(r, 0),
107                resolve: n,
108              });
109            };
110          },
111          o = function (e, t, r) {
112            e._q.push({ name: t, args: Array.prototype.slice.call(r, 0) });
113          },
114          i = function (e, t, r) {
115            e[t] = function () {
116              if (r)
117                return {
118                  promise: new Promise(s(e, t, Array.prototype.slice.call(arguments))),
119                };
120              o(e, t, Array.prototype.slice.call(arguments));
121            };
122          },
123          a = function (e) {
124            for (var t = 0; t < g.length; t++) i(e, g[t], !1);
125            for (var r = 0; r < m.length; r++) i(e, m[r], !0);
126          };
127        r.invoked = !0;
128        var c = t.createElement('script');
129        ((c.type = 'text/javascript'),
130          (c.integrity = 'sha384-tnQPTvGemUSjDAI90ro/rH+JThEuCEoyllb5A3a2nJvkq2BRaCgdPVs0j5QB083G'),
131          (c.crossOrigin = 'anonymous'),
132          (c.async = !0),
133          (c.src = 'https://cdn.amplitude.com/libs/analytics-browser-2.11.8-min.js.gz'),
134          (c.onload = function () {
135            e.amplitude.runQueuedFunctions || console.log('[Amplitude] Error: could not load SDK');
136          }));
137        var u = t.getElementsByTagName('script')[0];
138        u.parentNode.insertBefore(c, u);
139        for (
140          var l = function () {
141              return ((this._q = []), this);
142            },
143            p = [
144              'add',
145              'append',
146              'clearAll',
147              'prepend',
148              'set',
149              'setOnce',
150              'unset',
151              'preInsert',
152              'postInsert',
153              'remove',
154              'getUserProperties',
155            ],
156            d = 0;
157          d < p.length;
158          d++
159        )
160          n(l, p[d]);
161        r.Identify = l;
162        for (
163          var v = function () {
164              return ((this._q = []), this);
165            },
166            f = [
167              'getEventProperties',
168              'setProductId',
169              'setQuantity',
170              'setPrice',
171              'setRevenue',
172              'setRevenueType',
173              'setEventProperties',
174            ],
175            y = 0;
176          y < f.length;
177          y++
178        )
179          n(v, f[y]);
180        r.Revenue = v;
181        var g = [
182            'getDeviceId',
183            'setDeviceId',
184            'getSessionId',
185            'setSessionId',
186            'getUserId',
187            'setUserId',
188            'setOptOut',
189            'setTransport',
190            'reset',
191            'extendSession',
192          ],
193          m = [
194            'init',
195            'add',
196            'remove',
197            'track',
198            'logEvent',
199            'identify',
200            'groupIdentify',
201            'setGroup',
202            'revenue',
203            'flush',
204          ];
205        (a(r),
206          (r.createInstance = function (e) {
207            return ((r._iq[e] = { _q: [] }), a(r._iq[e]), r._iq[e]);
208          }),
209          (e.amplitude = r));
210      }
211    })(window, document);
212  })();
213
214  if (!API_KEY) {
215    throw new Error('[Amplitude] Error: No API key provided');
216  }
217
218  amplitude.init(API_KEY);
219})();</script>
219<script type="module">const r="journify_utm_state",n=["utm_source","utm_medium","utm_campaign","utm_term","utm_content"];let a={};const m=()=>{const o=new URLSearchParams(window.location.search),s={};let c=!1;if(n.forEach(t=>{const e=o.get(t);e&&(s[t]=e,c=!0)}),c)localStorage.setItem(r,JSON.stringify(s)),a=s;else if(Object.keys(a).length===0){const t=localStorage.getItem(r);if(t)try{a=JSON.parse(t)}catch(e){console.error("UTM Parse Error",e)}}};m();</script>
219<script type="text/javascript" src="https://app.iclosed.io/assets/widget.js" data-cta-widget="NcgOfqPV4c8i" async></script>
219<!-- Preload Fonts --><link rel="preload" href="/fonts/syne.woff2" as="font" type="font/woff2" crossorigin><link rel="preload" href="/fonts/dm_sans.woff2" as="font" type="font/woff2" crossorigin><link rel="stylesheet" href="/_astro/index.CpohJdaE.css">
220<style>@keyframes glow-pulse{0%,to{opacity:.35;transform:scale(1)}50%{opacity:.75;transform:scale(1.2)}}.glow-pulse[data-astro-cid-plffjcjw]{animation:glow-pulse 3s ease-in-out infinite}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes marquee-reverse{0%{transform:translate(-50%)}to{transform:translate(0)}}.marquee[data-astro-cid-plffjcjw]{animation:marquee-reverse 24s linear infinite}.marquee-slow[data-astro-cid-plffjcjw]{animation:marquee-reverse 28s linear infinite}
221.js-channel-bar[data-astro-cid-6ifp7iq4]{width:0;transition:width 1s cubic-bezier(.16,1,.3,1)}.js-line-path[data-astro-cid-6ifp7iq4]{stroke-dasharray:720;stroke-dashoffset:720;transition:stroke-dashoffset 1.4s cubic-bezier(.16,1,.3,1)}
222</style></head> <body> <!-- Google Tag Manager (noscript) -->
vendor: 69 bytes, line 222
222 <noscript> <iframe src="https://www.googletagmanager.com/ns.html?id=
222GTM-W5BZ6PM
vendor: 87 bytes, line 222
222" height="0" width="0" style="display: none; visibility: hidden"></iframe> </noscript> 
222<!-- End Google Tag Manager (noscript) --> <section class="bg-secondary w-full"> <div class="max-w-6xl mx-auto"> <header> <nav class="flex items-center justify-between py-4"> <a href="/" class="flex items-center"> <svg width="50" height="51" viewBox="0 0 50 51" fill="none" class="w-8 h-8">
223<g filter="url(#filter0_dd_4984_265813)">
224<path fill-rule="evenodd" clip-rule="evenodd" d="M20.93 25.94L20.05 26.45C19.27 26.9 18.82 27.68 18.82 28.59C18.82 29.5 19.27 30.27 20.05 30.73L31.09 37.1C31.87 37.55 32.77 37.55 33.56 37.1C34.34 36.65 34.79 35.87 34.79 34.96V15.23C34.79 14.37 35.49 13.66 36.36 13.66C37.23 13.66 37.93 14.36 37.93 15.23V36.57C37.93 37.37 38.27 38.06 38.91 38.54C39.07 38.66 39.22 38.79 39.36 38.93C40.13 39.7 40.6 40.76 40.6 41.93C40.6 43.1 40.13 44.16 39.36 44.93C38.59 45.7 37.53 46.17 36.36 46.17C35.19 46.17 34.13 45.7 33.37 44.93C32.72 44.28 32.28 43.41 32.16 42.45C32.06 41.65 31.64 41.01 30.94 40.61L17.1 32.62C16.41 32.22 15.64 32.17 14.9 32.49C14.39 32.71 13.83 32.83 13.24 32.83C12.07 32.83 11.01 32.36 10.24 31.59C9.47 30.82 9 29.76 9 28.59C9 27.42 9.47 26.36 10.24 25.59C11.01 24.82 12.07 24.35 13.24 24.35C13.83 24.35 14.39 24.47 14.9 24.69C15.64 25 16.41 24.96 17.1 24.56L19.38 23.25C20.07 22.85 20.5 22.21 20.6 21.41C20.72 20.45 21.16 19.58 21.81 18.93C22.58 18.16 23.64 17.69 24.81 17.69C25.98 17.69 27.04 18.17 27.8 18.93C28.56 19.69 29.04 20.76 29.04 21.93C29.04 23.1 28.57 24.16 27.8 24.93C27.03 25.7 25.97 26.17 24.81 26.17C24.22 26.17 23.66 26.05 23.15 25.83C22.41 25.52 21.64 25.56 20.95 25.96L20.93 25.94ZM33.36 3.24C34.13 2.47 35.19 2 36.35 2C37.51 2 38.58 2.48 39.35 3.24C40.12 4.01 40.59 5.07 40.59 6.24C40.59 7.41 40.12 8.47 39.35 9.23C38.58 9.99 37.52 10.47 36.35 10.47C35.18 10.47 34.12 10 33.36 9.23C32.59 8.46 32.12 7.4 32.12 6.24C32.12 5.08 32.59 4.01 33.36 3.24Z" fill="url(#paint0_linear_4984_265813)" />
225</g>
226<defs>
227<filter id="filter0_dd_4984_265813" x="0" y="0" width="50" height="50.1699" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
228<feFlood flood-opacity="0" result="BackgroundImageFix" />
229<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" />
230<feOffset dy="1" />
231<feGaussianBlur stdDeviation="1" />
232<feColorMatrix type="matrix" values="0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.06 0" />
233<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_4984_265813" />
234<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" />
235<feOffset dy="1" />
236<feGaussianBlur stdDeviation="1.5" />
237<feColorMatrix type="matrix" values="0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.1 0" />
238<feBlend mode="normal" in2="effect1_dropShadow_4984_265813" result="effect2_dropShadow_4984_265813" />
239<feBlend mode="normal" in="SourceGraphic" in2="effect2_dropShadow_4984_265813" result="shape" />
240</filter>
241<linearGradient id="paint0_linear_4984_265813" x1="78.3114" y1="46" x2="83.9805" y2="-3.73029" gradientUnits="userSpaceOnUse">
242<stop stop-color="#F81566" />
243<stop offset="1" stop-color="#F81566" />
244</linearGradient>
245</defs>
246</svg> <span class="text-black font-bold-760 font-syne">Journify</span> </a> <ul class="hidden md:flex items-center gap-1"> <li> <a href="/product/" class="px-4 py-2 text-base font-medium text-black rounded-lg hover:bg-secondary-200 transition-colors bg-secondary-500"> Product </a> </li><li> <a href="/integrations/" class="px-4 py-2 text-base font-medium text-black rounded-lg hover:bg-secondary-200 transition-colors"> Integrations </a> </li><li> <a href="/customers/" class="px-4 py-2 text-base font-medium text-black rounded-lg hover:bg-secondary-200 transition-colors"> Customers </a> </li><li> <a href="/resources/" class="px-4 py-2 text-base font-medium text-black rounded-lg hover:bg-secondary-200 transition-colors">
246 Resources </a> </li> </ul> <div class="hidden md:flex items-center gap-3"> <a href="https://app.journify.io" class="px-4 py-2 font-medium text-black hover:bg-secondary-200 transition-colors rounded-lg">
247Log in
248</a> <a href="/book-a-call/" class="font-syne cursor-pointer inline-flex items-center gap-2 text-center justify-center rounded-lg font-semibold transition-colors bg-brand text-white hover:bg-primary-700 text-sm px-4 py-2">Book a demo </a> </div> <button id="mobile-menu-toggle" class="md:hidden p-2 rounded-lg hover:bg-secondary-200 transition-colors" aria-label="Toggle menu" aria-expanded="false"> <svg width="1em" height="1em" class="size-6" id="icon-open" data-icon="ph:list">   <symbol id="ai:ph:list" viewBox="0 0 256 256"><path fill="currentColor" d="M224 128a8 8 0 0 1-8 8H40a8 8 0 0 1 0-16h176a8 8 0 0 1 8 8M40 72h176a8 8 0 0 0 0-16H40a8 8 0 0 0 0 16m176 112H40a8 8 0 0 0 0 16h176a8 8 0 0 0 0-16"/></symbol><use href="#ai:ph:list"></use>  </svg> <svg width="1em" height="1em" class="size-6 hidden" id="icon-close" data-icon="ph:x">   <symbol id="ai:ph:x" viewBox="0 0 256 256"><path fill="currentColor" d="M205.66 194.34a8 8 0 0 1-11.32 11.32L128 139.31l-66.34 66.35a8 8 0 0 1-11.32-11.32L116.69 128L50.34 61.66a8 8 0 0 1 11.32-11.32L128 116.69l66.34-66.35a8 8 0 0 1 11.32 11.32L139.31 128Z"/></symbol><use href="#ai:ph:x"></use>  </svg> </button> </nav> <div id="mobile-menu" class="hidden flex-col gap-1 pb-4 border-t border-secondary-500 md:hidden"> <a href="/product/" class="px-4 py-3 text-base font-medium text-black rounded-lg hover:bg-secondary-200 transition-colors bg-secondary-500"> Product </a><a href="/integrations/" class="px-4 py-3 text-base font-medium text-black rounded-lg hover:bg-secondary-200 transition-colors"> Integrations </a><a href="/customers/" class="px-4 py-3 text-base font-medium text-black rounded-lg hover:bg-secondary-200 transition-colors"> Customers </a><a href="/resources/" class="px-4 py-3 text-base font-medium text-black rounded-lg hover:bg-secondary-200 transition-colors">
248 Resources </a> <div class="flex flex-col gap-2 pt-3 border-t border-secondary-500 px-4"> <a href="https://app.journify.io" class="py-3 text-base font-medium text-black hover:bg-secondary-200 transition-colors rounded-lg">
249Log in
250</a> <div> <a href="/book-a-call/" class="font-syne cursor-pointer inline-flex items-center gap-2 text-center justify-center rounded-lg font-semibold transition-colors bg-brand text-white hover:bg-primary-700 text-sm px-4 py-2">Book a demo </a> </div> </div> </div> </header> 
250<script type="module">const n=document.getElementById("mobile-menu-toggle"),t=document.getElementById("mobile-menu"),s=document.getElementById("icon-open"),o=document.getElementById("icon-close");n.addEventListener("click",()=>{const e=t.classList.contains("flex");t.classList.toggle("hidden",e),t.classList.toggle("flex",!e),s.classList.toggle("hidden",!e),o.classList.toggle("hidden",e),n.setAttribute("aria-expanded",String(!e))});</script>
250 </div> </section>  <section class="bg-secondary w-full"> <div class="max-w-6xl mx-auto px-4 md:px-0">  <div class="flex flex-col space-y-12 md:space-y-24 py-12 md:py-24" data-astro-cid-plffjcjw> <div class="flex items-center justify-between gap-8" data-astro-cid-plffjcjw> <div class="flex flex-col items-center text-center flex-1 min-w-0" data-astro-cid-plffjcjw> <h1 class="text-3xl md:text-6xl text-black mb-1"> Ad signal </h1> <h2 class="text-3xl md:text-6xl font-syne font-extrabold bg-linear-to-r from-black to-brand bg-clip-text text-transparent mb-6"> infrastructure. </h2> <div class="relative w-full mt-10 md:mt-24 h-18 md:h-auto" data-astro-cid-plffjcjw> <div class="flex flex-col justify-between h-full md:h-auto gap-2 w-full overflow-hidden" style="mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent); -webkit-mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent)" data-astro-cid-plffjcjw> <div class="overflow-hidden relative" data-astro-cid-plffjcjw> <div style="clip-path: inset(0 50% 0 0)" data-astro-cid-plffjcjw> <div class="flex gap-2 w-max marquee" data-astro-cid-plffjcjw> <div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>
250Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>
250Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div> </div> </div> <div class="absolute inset-0" style="clip-path: inset(0 0 0 50%)" data-astro-cid-plffjcjw> <div class="flex gap-2 w-max marquee" data-astro-cid-plffjcjw> <div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-purple-950 text-primary-200" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>Purchased : </span> <span class="text-xs" data-astro-cid-plffjcjw>matched</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-brand text-white" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>Match rate : </span> <span class="text-xs" data-astro-cid-plffjcjw>94%</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-purple-950 text-primary-200" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>Google : </span> <span class="text-xs" data-astro-cid-plffjcjw>offline conversion</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-purple-950 text-primary-200" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>Snap : </span> <span class="text-xs" data-astro-cid-plffjcjw>deduplication</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-brand text-white" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>7 : </span> <span class="text-xs" data-astro-cid-plffjcjw>events sent</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-purple-950 text-primary-200" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>Signal coverage : </span> <span class="text-xs" data-astro-cid-plffjcjw>100%</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-brand text-white" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>EMQ score : </span> <span class="text-xs" data-astro-cid-plffjcjw>9.1</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-purple-950 text-primary-200" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>
250Linkedin : </span> <span class="text-xs" data-astro-cid-plffjcjw>Lead attributed</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-purple-950 text-primary-200" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>Purchased : </span> <span class="text-xs" data-astro-cid-plffjcjw>matched</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-brand text-white" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>Match rate : </span> <span class="text-xs" data-astro-cid-plffjcjw>94%</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-purple-950 text-primary-200" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>Google : </span> <span class="text-xs" data-astro-cid-plffjcjw>offline conversion</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-purple-950 text-primary-200" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>Snap : </span> <span class="text-xs" data-astro-cid-plffjcjw>deduplication</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-brand text-white" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>7 : </span> <span class="text-xs" data-astro-cid-plffjcjw>events sent</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-purple-950 text-primary-200" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>Signal coverage : </span> <span class="text-xs" data-astro-cid-plffjcjw>100%</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-brand text-white" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>EMQ score : </span> <span class="text-xs" data-astro-cid-plffjcjw>9.1</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-purple-950 text-primary-200" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>Linkedin : </span> <span class="text-xs" data-astro-cid-plffjcjw>Lead attributed</span> </div> </div> </div> </div><div class="overflow-hidden relative" data-astro-cid-plffjcjw> <div style="clip-path: inset(0 50% 0 0)" data-astro-cid-plffjcjw> <div class="flex gap-2 w-max marquee-slow" data-astro-cid-plffjcjw> <div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>
250Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>
250Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Duplicate : </span> <span class="text-xs" data-astro-cid-plffjcjw>ViewContent ×3</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>Incomplete : </span> <span class="text-xs" data-astro-cid-plffjcjw>Purchase</span> </div><div class="inline-flex items-center bg-secondary-600 border border-secondary-900 text-purple-900 rounded-full py-2 px-3 whitespace-nowrap" data-astro-cid-plffjcjw> <span class="text-xs" data-astro-cid-plffjcjw>
250Delayed : </span> <span class="text-xs" data-astro-cid-plffjcjw>AddToCart</span> </div> </div> </div> <div class="absolute inset-0" style="clip-path: inset(0 0 0 50%)" data-astro-cid-plffjcjw> <div class="flex gap-2 w-max marquee-slow" data-astro-cid-plffjcjw> <div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-purple-950 text-primary-200" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>Purchased : </span> <span class="text-xs" data-astro-cid-plffjcjw>matched</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-brand text-white" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>Match rate : </span> <span class="text-xs" data-astro-cid-plffjcjw>94%</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-purple-950 text-primary-200" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>Google : </span> <span class="text-xs" data-astro-cid-plffjcjw>offline conversion</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-purple-950 text-primary-200" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>Snap : </span> <span class="text-xs" data-astro-cid-plffjcjw>deduplication</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-brand text-white" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>7 : </span> <span class="text-xs" data-astro-cid-plffjcjw>events sent</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-purple-950 text-primary-200" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>Signal coverage : </span> <span class="text-xs" data-astro-cid-plffjcjw>100%</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-brand text-white" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>EMQ score : </span> <span class="text-xs" data-astro-cid-plffjcjw>9.1</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-purple-950 text-primary-200" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>Linkedin : </span> <span class="text-xs" data-astro-cid-plffjcjw>Lead attributed</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-purple-950 text-primary-200" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>Purchased : </span> <span class="text-xs" data-astro-cid-plffjcjw>matched</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-brand text-white" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>Match rate : </span> <span class="text-xs" data-astro-cid-plffjcjw>94%</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-purple-950 text-primary-200" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>Google : </span> <span class="text-xs" data-astro-cid-plffjcjw>offline conversion</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-purple-950 text-primary-200" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>Snap : </span> <span class="text-xs" data-astro-cid-plffjcjw>deduplication</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-brand text-white" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>7 : </span> <span class="text-xs" data-astro-cid-plffjcjw>events sent</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-purple-950 text-primary-200" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>Signal coverage : </span> <span class="text-xs" data-astro-cid-plffjcjw>100%</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-brand text-white" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>EMQ score : </span> <span class="text-xs" data-astro-cid-plffjcjw>9.1</span> </div><div class="inline-flex items-center rounded-full px-3 py-2 whitespace-nowrap bg-purple-950 text-primary-200" data-astro-cid-plffjcjw> <span class="text-xs font-semibold" data-astro-cid-plffjcjw>
250Linkedin : </span> <span class="text-xs" data-astro-cid-plffjcjw>Lead attributed</span> </div> </div> </div> </div> </div> <div class="absolute inset-0 -top-4 md:-top-12 grid place-items-center pointer-events-none" data-astro-cid-plffjcjw> <div class="absolute w-48 h-48 md:w-80 md:h-80 rounded-full bg-primary-300/20 blur-2xl glow-pulse" data-astro-cid-plffjcjw></div> <img src="/_astro/product_engine.DV-hrW4M_1LPYty.webp" alt="Product engine" data-astro-cid-plffjcjw="true" loading="lazy" decoding="async" fetchpriority="auto" width="738" height="608" class="h-36 md:h-68 w-auto"> </div> </div> </div> </div> <div class="flex flex-col items-center justify-center space-y-4" data-astro-cid-plffjcjw> <p class="leading-relaxed text-black text-lg max-w-3xl text-center" data-astro-cid-plffjcjw>
251The layer that ensures your conversions reach ad platforms.<br data-astro-cid-plffjcjw>
252Journify connects to your data sources: website, backend, CRM, payments, and offline. Every conversion
253      reaches ad platforms. Complete. Clean. In real time.
254</p> <div class="flex flex-col sm:flex-row md:w-auto w-full items-center gap-4 justify-center flex-wrap" data-astro-cid-plffjcjw> <a href="/book-a-call/" class="font-syne cursor-pointer inline-flex items-center gap-2 rounded-lg font-semibold transition-colors bg-brand text-white hover:bg-primary-700 text-base px-6 py-3 w-full md:w-auto text-center justify-center">Book a demo <svg width="1em" height="1em" class="size-4" data-icon="ph:arrow-right">   <symbol id="ai:ph:arrow-right" viewBox="0 0 256 256"><path fill="currentColor" d="m221.66 133.66l-72 72a8 8 0 0 1-11.32-11.32L196.69 136H40a8 8 0 0 1 0-16h156.69l-58.35-58.34a8 8 0 0 1 11.32-11.32l72 72a8 8 0 0 1 0 11.32"/></symbol><use href="#ai:ph:arrow-right"></use>  </svg></a> <a href="/integrations/" class="font-syne cursor-pointer inline-flex items-center gap-2 rounded-lg font-semibold transition-colors bg-secondary-500 text-black/70 hover:bg-secondary-600 text-base px-6 py-3 w-full md:w-auto text-center justify-center">See integrations </a> </div> </div> </div>  </div> </section> <section class="w-full"> <div class="max-w-6xl mx-auto px-4 md:px-0">  <div class="pt-24 flex items-start flex-col gap-4 mb-12"> <span class="inline-flex items-center gap-1.5 font-medium rounded-lg tracking-snug font-syne bg-black text-white text-xs px-3 py-2 uppercase"> Real results </span> <h2 class="text-xl md:text-5xl font-syne font-medium text-black md:leading-14"> 
255What happens when platforms<br> <span class="font-syne text-brand font-bold-760"> see the full picture. </span><br>  </h2> <div class="hidden md:flex items-center"> <a href="/customers/" class="font-syne cursor-pointer inline-flex items-center gap-2 text-center justify-center rounded-lg font-semibold transition-colors bg-brand text-white hover:bg-primary-700 text-sm px-4 py-2">All customer stories <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-4" data-icon="ph:arrow-right">   <use href="#ai:ph:arrow-right"></use>  </svg></a> </div> </div> <div class="relative md:-mx-16 overflow-hidden"> <div id="pwaf07o-fade-left" class="pointer-events-none absolute left-0 top-0 h-full w-24 z-10 bg-linear-to-r from-white to-transparent opacity-0 transition-opacity duration-300"></div> <div id="pwaf07o-fade-right" class="pointer-events-none absolute right-0 top-0 h-full w-24 z-10 bg-linear-to-l from-white to-transparent opacity-0 transition-opacity duration-300"></div> <div id="pwaf07o" class="flex gap-5 no-scrollbar overflow-x-auto scroll-smooth"> <a href="/customers/lumi-drives-170-more-installs-with-31-lower-cost-per-booking-on-snapchat/" class="group relative shrink-0 w-86 rounded-3xl overflow-hidden aspect-3/4"> <img src="https://cdn.sanity.io/images/9g3hocpu/production/67a1dfaf370911cc1d3aa8c35036fc59ca84afc1-1376x768.png?h=427&fm=webp" alt="Lumi drives 170% more app installs and cuts cost per install by 50% on Snapchat" class="absolute inset-0 w-full h-full object-cover"> <div class="absolute inset-0 bg-linear-to-t from-black/80 via-black/20 to-transparent"></div> <div class="absolute top-5 left-5 right-5 grid grid-cols-2 gap-2 items-start z-10"> <img src="https://cdn.sanity.io/images/9g3hocpu/production/2f898c8de235a867343d9af6147e4975483a4037-1537x655.svg?h=128&fm=webp" alt="Lumi" class="max-w-28 object-contain brightness-0 invert group-hover:brightness-100 group-hover:invert-0 transition-[filter] duration-300"> <div class="flex flex-wrap gap-1 justify-self-end opacity-0 group-hover:opacity-100 transition-opacity duration-300"> <span class="text-2xs font-semibold bg-white text-brand px-2 py-1 rounded-md"> Car rental / mobility </span> </div> </div> <div class="absolute bottom-6 left-5 right-5 text-white group-hover:opacity-0 transition-opacity duration-300"> <div class="flex flex-wrap gap-4"> <div> <p class="text-3xl md:text-5xl font-syne font-extrabold">170%</p> <p class="font-medium text-white mb-3">increase in app installs</p> </div><div> <p class="text-3xl md:text-5xl font-syne font-extrabold">50%</p> <p class="font-medium text-white mb-3">decrease in cost per install</p> </div> </div> </div> <div class="absolute inset-0 bg-secondary-100/95 flex flex-col p-5 opacity-0 group-hover:opacity-100 transition-opacity duration-300"> <div class="shrink-0 h-8"></div> <div class="flex-1 flex items-center "> <p class="text-sm text-black italic font-medium border-l-2 pl-2 border-brand"> Snap&#39;s algorithm optimizes on what it sees. When Lumi fixed what it was sending, everything else followed. </p> </div> <span class="inline-flex items-center gap-1.5 text-sm font-semibold text-brand">
256Read the story
257<svg width="1em" height="1em" class="ml-auto size-5" data-icon="ph:arrow-right-bold">
257   <symbol id="ai:ph:arrow-right-bold" viewBox="0 0 256 256"><path fill="currentColor" d="m224.49 136.49l-72 72a12 12 0 0 1-17-17L187 140H40a12 12 0 0 1 0-24h147l-51.49-51.52a12 12 0 0 1 17-17l72 72a12 12 0 0 1-.02 17.01"/></symbol><use href="#ai:ph:arrow-right-bold"></use>  </svg> </span> </div> </a><a href="/customers/baytonia-generating-scale-and-efficiency-with-journify-and-tiktok/" class="group relative shrink-0 w-86 rounded-3xl overflow-hidden aspect-3/4"> <img src="https://cdn.sanity.io/images/9g3hocpu/production/4cf58e26edce44dc20ea5f163f37f5133603f459-1376x768.png?h=427&fm=webp" alt="Baytonia increases ROAS by 80% and cuts cost per purchase by 44% on TikTok" class="absolute inset-0 w-full h-full object-cover"> <div class="absolute inset-0 bg-linear-to-t from-black/80 via-black/20 to-transparent"></div> <div class="absolute top-5 left-5 right-5 grid grid-cols-2 gap-2 items-start z-10"> <img src="https://cdn.sanity.io/images/9g3hocpu/production/227e395add108e334f0079fea21c84332a4ec699-697x212.png?h=128&fm=webp" alt="BAYTONIA" class="max-w-28 object-contain brightness-0 invert group-hover:brightness-100 group-hover:invert-0 transition-[filter] duration-300"> <div class="flex flex-wrap gap-1 justify-self-end opacity-0 group-hover:opacity-100 transition-opacity duration-300"> <span class="text-2xs font-semibold bg-white text-brand px-2 py-1 rounded-md"> Furniture </span><span class="text-2xs font-semibold bg-white text-brand px-2 py-1 rounded-md"> Electronics and Home Appliances </span> </div> </div> <div class="absolute bottom-6 left-5 right-5 text-white group-hover:opacity-0 transition-opacity duration-300"> <div class="flex flex-wrap gap-4"> <div> <p class="text-3xl md:text-5xl font-syne font-extrabold">80%</p> <p class="font-medium text-white mb-3">increase in ROAS</p> </div><div> <p class="text-3xl md:text-5xl font-syne font-extrabold">44%</p> <p class="font-medium text-white mb-3">drop in cost per purchase</p> </div> </div> </div> <div class="absolute inset-0 bg-secondary-100/95 flex flex-col p-5 opacity-0 group-hover:opacity-100 transition-opacity duration-300"> <div class="shrink-0 h-8"></div> <div class="flex-1 flex items-center "> <p class="text-sm text-black italic font-medium border-l-2 pl-2 border-brand"> Baytonia&#39;s TikTok campaigns were running on incomplete purchase data. The algorithm was learning from a partial picture of who was actually buying. Once the full signal reached the platform, targeting sharpened and cost came down. </p> </div> <span class="inline-flex items-center gap-1.5 text-sm font-semibold text-brand">
258Read the story
259<svg width="1em" height="1em" viewBox="0 0 256 256" class="ml-auto size-5" data-icon="ph:arrow-right-bold">   <use href="#ai:ph:arrow-right-bold"></use>  </svg> </span> </div> </a><a href="/customers/driving-unmatched-growth-for-jarir-with-journify-and-meta/" class="group relative shrink-0 w-86 rounded-3xl overflow-hidden aspect-3/4"> <img src="https://cdn.sanity.io/images/9g3hocpu/production/93165a54414ba0b717684a4f852a48538035491a-1376x768.png?h=427&fm=webp" alt="Jarir Bookstore increases purchases visible to Meta by 205% and ROAS by 182%" class="absolute inset-0 w-full h-full object-cover"> <div class="absolute inset-0 bg-linear-to-t from-black/80 via-black/20 to-transparent"></div> <div class="absolute top-5 left-5 right-5 grid grid-cols-2 gap-2 items-start z-10"> <img src="https://cdn.sanity.io/images/9g3hocpu/production/0b59f62ff287c7ea3fc9b6224e1b1e1427063a6c-118x24.svg?h=128&fm=webp" alt="JARIR BOOKSTORE" class="max-w-28 object-contain brightness-0 invert group-hover:brightness-100 group-hover:invert-0 transition-[filter] duration-300"> <div class="flex flex-wrap gap-1 justify-self-end opacity-0 group-hover:opacity-100 transition-opacity duration-300"> <span class="text-2xs font-semibold bg-white text-brand px-2 py-1 rounded-md"> Electronics and Home Appliances </span> </div> </div> <div class="absolute bottom-6 left-5 right-5 text-white group-hover:opacity-0 transition-opacity duration-300"> <div class="flex flex-wrap gap-4"> <div> <p class="text-3xl md:text-5xl font-syne font-extrabold">205%</p> <p class="font-medium text-white mb-3">increase in purchases visible to Meta</p> </div><div> <p class="text-3xl md:text-5xl font-syne font-extrabold">182%</p> <p class="font-medium text-white mb-3">increase in ROAS</p> </div> </div> </div> <div class="absolute inset-0 bg-secondary-100/95 flex flex-col p-5 opacity-0 group-hover:opacity-100 transition-opacity duration-300"> <div class="shrink-0 h-8"></div> <div class="flex-1 flex items-center "> <p class="text-sm text-black italic font-medium border-l-2 pl-2 border-brand"> Jarir&#39;s campaigns were generating real purchases across Saudi Arabia and Kuwait that Meta couldn&#39;t fully see. The platform was allocating budget based on a partial picture of who was actually buying. </p> </div> <span class="inline-flex items-center gap-1.5 text-sm font-semibold text-brand">
260Read the story
261<svg width="1em" height="1em" viewBox="0 0 256 256" class="ml-auto size-5" data-icon="ph:arrow-right-bold">   <use href="#ai:ph:arrow-right-bold"></use>  </svg> </span> </div> </a><a href="/customers/wassalt-increase-lead-journify-snapchat/" class="group relative shrink-0 w-86 rounded-3xl overflow-hidden aspect-3/4"> <img src="https://cdn.sanity.io/images/9g3hocpu/production/90bac98a35b66cf72f84b668ed5264e366f81c76-1376x768.png?h=427&fm=webp" alt="Wasalt increases leads by 29% and cuts cost per lead by 60% on Snapchat" class="absolute inset-0 w-full h-full object-cover"> <div class="absolute inset-0 bg-linear-to-t from-black/80 via-black/20 to-transparent"></div> <div class="absolute top-5 left-5 right-5 grid grid-cols-2 gap-2 items-start z-10"> <img src="https://cdn.sanity.io/images/9g3hocpu/production/5950d18598475516540fba35b53b2cf2278aaebe-851x293.png?h=128&fm=webp" alt="WASALT" class="max-w-28 object-contain brightness-0 invert group-hover:brightness-100 group-hover:invert-0 transition-[filter] duration-300"> <div class="flex flex-wrap gap-1 justify-self-end opacity-0 group-hover:opacity-100 transition-opacity duration-300"> <span class="text-2xs font-semibold bg-white text-brand px-2 py-1 rounded-md"> Real Estate </span> </div> </div> <div class="absolute bottom-6 left-5 right-5 text-white group-hover:opacity-0 transition-opacity duration-300"> <div class="flex flex-wrap gap-4"> <div> <p class="text-3xl md:text-5xl font-syne font-extrabold">60%</p> <p class="font-medium text-white mb-3">decrease in cost per lead</p> </div><div> <p class="text-3xl md:text-5xl font-syne font-extrabold">29% </p> <p class="font-medium text-white mb-3">increase in leads</p> </div> </div> </div> <div class="absolute inset-0 bg-secondary-100/95 flex flex-col p-5 opacity-0 group-hover:opacity-100 transition-opacity duration-300"> <div class="shrink-0 h-8"></div> <div class="flex-1 flex items-center "> <p class="text-sm text-black italic font-medium border-l-2 pl-2 border-brand"> Snapchat was learning from half the picture. Server-side events through Journify were reaching the platform at twice the volume of pixel-only events. Once the full signal arrived, the algorithm stopped optimizing on noise and started finding real property buyers. </p> </div> <span class="inline-flex items-center gap-1.5 text-sm font-semibold text-brand">
262Read the story
263<svg width="1em" height="1em" viewBox="0 0 256 256" class="ml-auto size-5" data-icon="ph:arrow-right-bold">   <use href="#ai:ph:arrow-right-bold"></use>  </svg> </span> </div> </a><a href="/customers/dr-nutrition-improved-roas-with-journify-and-snapchat/" class="group relative shrink-0 w-86 rounded-3xl overflow-hidden aspect-3/4"> <img src="https://cdn.sanity.io/images/9g3hocpu/production/e8c540d94f5ebedfebec64accf497ef4da7d41da-1376x768.png?h=427&fm=webp" alt="Dr. Nutrition cuts cost per purchase by 80% and cost per click by 15% on Snapchat" class="absolute inset-0 w-full h-full object-cover"> <div class="absolute inset-0 bg-linear-to-t from-black/80 via-black/20 to-transparent"></div> <div class="absolute top-5 left-5 right-5 grid grid-cols-2 gap-2 items-start z-10"> <img src="https://cdn.sanity.io/images/9g3hocpu/production/a4b53e529668e0125d9df546
263dfb65ffbfc06941c-300x150.png?h=128&fm=webp" alt="DNP" class="max-w-28 object-contain brightness-0 invert group-hover:brightness-100 group-hover:invert-0 transition-[filter] duration-300"> <div class="flex flex-wrap gap-1 justify-self-end opacity-0 group-hover:opacity-100 transition-opacity duration-300"> <span class="text-2xs font-semibold bg-white text-brand px-2 py-1 rounded-md"> E-commerce </span> </div> </div> <div class="absolute bottom-6 left-5 right-5 text-white group-hover:opacity-0 transition-opacity duration-300"> <div class="flex flex-wrap gap-4"> <div> <p class="text-3xl md:text-5xl font-syne font-extrabold">80%</p> <p class="font-medium text-white mb-3">drop in cost per purchase</p> </div><div> <p class="text-3xl md:text-5xl font-syne font-extrabold">15%</p> <p class="font-medium text-white mb-3">decrease in cost per click</p> </div> </div> </div> <div class="absolute inset-0 bg-secondary-100/95 flex flex-col p-5 opacity-0 group-hover:opacity-100 transition-opacity duration-300"> <div class="shrink-0 h-8"></div> <div class="flex-1 flex items-center "> <p class="text-sm text-black italic font-medium border-l-2 pl-2 border-brand"> Dr. Nutrition&#39;s Snapchat campaigns were generating real purchase activity the platform couldn&#39;t fully see. Cost per purchase was elevated and click quality was limited. The campaign wasn&#39;t the problem. The data feeding it was. </p> </div> <span class="inline-flex items-center gap-1.5 text-sm font-semibold text-brand">
264Read the story
265<svg width="1em" height="1em" viewBox="0 0 256 256" class="ml-auto size-5" data-icon="ph:arrow-right-bold">   <use href="#ai:ph:arrow-right-bold"></use>  </svg> </span> </div> </a><a href="/customers/qasr-al-awani-increases-26-roas-with-journify-and-snapchat/" class="group relative shrink-0 w-86 rounded-3xl overflow-hidden aspect-3/4"> <img src="https://cdn.sanity.io/images/9g3hocpu/production/c849e5b0d7708eca1da3c76a7fb7a644d49c90ea-1376x768.png?h=427&fm=webp" alt="Qasr Al Awani increases ROAS by 26% and cuts cost per purchase by 17% on Snapchat" class="absolute inset-0 w-full h-full object-cover"> <div class="absolute inset-0 bg-linear-to-t from-black/80 via-black/20 to-transparent"></div> <div class="absolute top-5 left-5 right-5 grid grid-cols-2 gap-2 items-start z-10"> <img src="https://cdn.sanity.io/images/9g3hocpu/production/c0328effa0d070cc7ee6b557e3c7fff8ce00bf37-749x200.png?h=128&fm=webp" alt="QASR ALAWANI" class="max-w-28 object-contain brightness-0 invert group-hover:brightness-100 group-hover:invert-0 transition-[filter] duration-300"> <div class="flex flex-wrap gap-1 justify-self-end opacity-0 group-hover:opacity-100 transition-opacity duration-300"> <span class="text-2xs font-semibold bg-white text-brand px-2 py-1 rounded-md"> Electronics and Home Appliances </span> </div> </div> <div class="absolute bottom-6 left-5 right-5 text-white group-hover:opacity-0 transition-opacity duration-300"> <div class="flex flex-wrap gap-4"> <div> <p class="text-3xl md:text-5xl font-syne font-extrabold">26%</p> <p class="font-medium text-white mb-3">increase in ROAS</p> </div><div> <p class="text-3xl md:text-5xl font-syne font-extrabold">17%</p> <p class="font-medium text-white mb-3">decrease in cost per purchase</p> </div> </div> </div> <div class="absolute inset-0 bg-secondary-100/95 flex flex-col p-5 opacity-0 group-hover:opacity-100 transition-opacity duration-300"> <div class="shrink-0 h-8"></div> <div class="flex-1 flex items-center "> <p class="text-sm text-black italic font-medium border-l-2 pl-2 border-brand"> Qasr Al Awani&#39;s Snapchat campaigns were running on an Event Quality Score of 4.3 out of 10. The platform&#39;s AI was learning from incomplete data. Fixing the signal changed what the algorithm could see and who it could find. </p> </div> <span class="inline-flex items-center gap-1.5 text-sm font-semibold text-brand">
266Read the story
267<svg width="1em" height="1em" viewBox="0 0 256 256" class="ml-auto size-5" data-icon="ph:arrow-right-bold">   <use href="#ai:ph:arrow-right-bold"></use>  </svg> </span> </div> </a><a href="/customers/al-hokail-clinics-increased-sign-ups-with-journify-and-snapchat/" class="group relative shrink-0 w-86 rounded-3xl overflow-hidden aspect-3/4"> <img src="https://cdn.sanity.io/images/9g3hocpu/production/059a972047b760608b0a8cece31be946f0c9e025-1376x768.png?h=427&fm=webp" alt="Al Hokail Medical Group doubles sign-ups and cuts cost per lead by 80% on Snapchat" class="absolute inset-0 w-full h-full object-cover"> <div class="absolute inset-0 bg-linear-to-t from-black/80 via-black/20 to-transparent"></div> <div class="absolute top-5 left-5 right-5 grid grid-cols-2 gap-2 items-start z-10"> <img src="https://cdn.sanity.io/images/9g3hocpu/production/d83cc1a6d23e435bfe6048dc0fbe20169ad8fd45-4
26700x332.heif?h=128&fm=webp" alt="AL Hokail Medical Group" class="max-w-28 object-contain brightness-0 invert group-hover:brightness-100 group-hover:invert-0 transition-[filter] duration-300"> <div class="flex flex-wrap gap-1 justify-self-end opacity-0 group-hover:opacity-100 transition-opacity duration-300"> <span class="text-2xs font-semibold bg-white text-brand px-2 py-1 rounded-md"> Healthcare </span> </div> </div> <div class="absolute bottom-6 left-5 right-5 text-white group-hover:opacity-0 transition-opacity duration-300"> <div class="flex flex-wrap gap-4"> <div> <p class="text-3xl md:text-5xl font-syne font-extrabold">100% </p> <p class="font-medium text-white mb-3">increase in sign-ups</p> </div><div> <p class="text-3xl md:text-5xl font-syne font-extrabold">80% </p> <p class="font-medium text-white mb-3">drop in cost per lead</p> </div> </div> </div> <div class="absolute inset-0 bg-secondary-100/95 flex flex-col p-5 opacity-0 group-hover:opacity-100 transition-opacity duration-300"> <div class="shrink-0 h-8"></div> <div class="flex-1 flex items-center "> <p class="text-sm text-black italic font-medium border-l-2 pl-2 border-brand"> Al Hokail&#39;s Snapchat campaigns were generating real sign-up activity the platform couldn&#39;t fully see. Incomplete signals meant the algorithm was targeting on guesswork. Fixing the data layer changed what Snapchat could optimize toward. </p> </div> <span class="inline-flex items-center gap-1.5 text-sm font-semibold text-brand">
268Read the story
269<svg width="1em" height="1em" viewBox="0 0 256 256" class="ml-auto size-5" data-icon="ph:arrow-right-bold">   <use href="#ai:ph:arrow-right-bold"></use>  </svg> </span> </div> </a> </div> <div class="justify-center gap-3 mt-8 hidden md:flex"> <button type="button" id="pwaf07o-prev" class="font-syne cursor-pointer inline-flex gap-2 text-center font-semibold transition-colors bg-brand text-white hover:bg-primary-700 justify-center items-center aspect-square w-12 h-9 rounded-xl p-0"> <svg width="1em" height="1em" class="size-4" data-icon="ph:arrow-left">   <symbol id="ai:ph:arrow-left" viewBox="0 0 256 256"><path fill="currentColor" d="M224 128a8 8 0 0 1-8 8H59.31l58.35 58.34a8 8 0 0 1-11.32 11.32l-72-72a8 8 0 0 1 0-11.32l72-72a8 8 0 0 1 11.32 11.32L59.31 120H216a8 8 0 0 1 8 8"/></symbol><use href="#ai:ph:arrow-left"></use>  </svg></button> <button type="button" id="pwaf07o-next" class="font-syne cursor-pointer inline-flex gap-2 text-center font-semibold transition-colors bg-brand text-white hover:bg-primary-700 justify-center items-center aspect-square w-12 h-9 rounded-xl p-0"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-4" data-icon="ph:arrow-right">   <use href="#ai:ph:arrow-right"></use>  </svg></button> </div> </div> 
269<script>(function(){const uid = "pwaf07o";
270
271  const carousel = document.getElementById(uid);
272  const prevBtn = document.getElementById(`${uid}-prev`);
273  const nextBtn = document.getElementById(`${uid}-next`);
274  const fadeLeft = document.getElementById(`${uid}-fade-left`);
275  const fadeRight = document.getElementById(`${uid}-fade-right`);
276  const STEP = 340;
277  const ACTIVE = ['bg-primary-500', 'text-white', 'hover:bg-primary-600', 'cursor-pointer'];
278  const INACTIVE = [
279    'bg-secondary-500',
280    'cursor-not-allowed',
281    'text-white',
282    'hover:bg-secondary-600',
283  ];
284
285  function applyVariant(el, variant) {
286    [...ACTIVE, ...INACTIVE].forEach((c) => el.classList.remove(c));
287    variant.forEach((c) => el.classList.add(c));
288  }
289
290  function updateButtons() {
291    const atStart = carousel.scrollLeft <= 0;
292    const atEnd = carousel.scrollLeft + carousel.clientWidth >= carousel.scrollWidth - 1;
293    applyVariant(prevBtn, atStart ? INACTIVE : ACTIVE);
294    applyVariant(nextBtn, atEnd ? INACTIVE : ACTIVE);
295    fadeLeft.classList.toggle('opacity-0', atStart);
296    fadeLeft.classList.toggle('opacity-100', !atStart);
297    fadeRight.classList.toggle('opacity-0', atEnd);
298    fadeRight.classList.toggle('opacity-100', !atEnd);
299  }
300
301  prevBtn.addEventListener('click', () => carousel.scrollBy({ left: -STEP, behavior: 'smooth' }));
302  nextBtn.addEventListener('click', () => carousel.scrollBy({ left: STEP, behavior: 'smooth' }));
303  carousel.addEventListener('scroll', updateButtons, { passive: true });
304  requestAnimationFrame(updateButtons);
305})();</script>
305 <div class="mt-6 inline-flex md:hidden items-center w-full"> <a href="/integrations/" class="font-syne cursor-pointer inline-flex items-center gap-2 rounded-lg font-semibold transition-colors bg-brand text-white hover:bg-primary-700 text-sm px-4 py-2 w-full text-center justify-center">All customer stories <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-4" data-icon="ph:arrow-right">   <use href="#ai:ph:arrow-right"></use>  </svg></a> </div>  </div> </section> <section class="w-full"> <div class="max-w-6xl mx-auto px-4 md:px-0">  <div class="mt-24 space-y-4 mb-6"> <span class="inline-flex items-center gap-1.5 font-medium rounded-lg tracking-snug font-syne bg-black text-white text-xs px-3 py-2 uppercase"> How it works </span> <h2 class="text-xl md:text-5xl font-syne font-medium text-black md:leading-14">  <span class="font-syne text-brand font-bold-760"> Five layers. One job: </span> <br>
306make sure ad platforms get the full picture.
307 </h2> <p class="max-w-lg">
308Journify controls the full signal path from your data sources to each ad platform. Every layer
309    affects the next.
310</p> </div> <div data-orientation="vertical" class="grid grid-cols-1 md:grid-cols-2 gap-6 md:gap-x-24 md:gap-y-3 md:hidden"> <div class="flex flex-col gap-2 md:contents"> <button data-step="0" class="step-btn flex items-center gap-4 bg-white rounded-2xl px-5 py-4 border border-gray-200 text-left cursor-pointer md:col-start-1 [transition:translate_600ms_cubic-bezier(0.34,1.56,0.64,1),background_200ms_ease,border-color_200ms_ease,box-shadow_200ms_ease]" aria-selected="true"> <div class="step-icon w-10 h-10 bg-secondary-100 rounded-xl flex items-center justify-center shrink-0 transition-colors"> <svg width="1em" height="1em" class="step-icon-svg size-6 text-secondary-600 transition-colors" data-icon="ph:crosshair-fill">   <symbol id="ai:ph:crosshair-fill" viewBox="0 0 256 256"><path fill="currentColor" d="M232 120h-8.34A96.14 96.14 0 0 0 136 32.34V24a8 8 0 0 0-16 0v8.34A96.14 96.14 0 0 0 32.34 120H24a8 8 0 0 0 0 16h8.34A96.14 96.14 0 0 0 120 223.66V232a8 8 0 0 0 16 0v-8.34A96.14 96.14 0 0 0 223.66 136H232a8 8 0 0 0 0-16m-32 16h7.6a80.15 80.15 0 0 1-71.6 71.6V200a8 8 0 0 0-16 0v7.6A80.15 80.15 0 0 1 48.4 136H56a8 8 0 0 0 0-16h-7.6A80.15 80.15 0 0 1 120 48.4V56a8 8 0 0 0 16 0v-7.6a80.15 80.15 0 0 1 71.6 71.6H200a8 8 0 0 0 0 16m-32-8a40 40 0 1 1-40-40a40 40 0 0 1 40 40"/></symbol><use href="#ai:ph:crosshair-fill"></use>  </svg> </div> <div> <div class="step-header flex items-center gap-2 origin-left [transition:scale_300ms_cubic-bezier(0.34,1.56,0.64,1)]"> <span class="text-sm text-black/30">01</span> <p class="font-syne font-bold text-black">Capture</p> </div> <p class="step-desc text-xs text-gray-400 overflow-hidden transition-all duration-300 max-h-0 opacity-0 -translate-y-1"> Every conversion, every source. </p> </div> <span class="step-dot ml-auto w-2.5 h-2.5 rounded-full opacity-0 transition-opacity duration-200 shrink-0"></span> </button> <div data-panel="0" class="rounded-3xl p-8 flex flex-col justify-between transition-all duration-300 md:col-start-2 md:row-start-1 md:row-span-5 shadow-2xl shadow-orange-200 border border-orange-200 bg-orange-50"> <div> <div class="border-b-2 mb-8 flex justify-between border-orange-200"> <p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-orange-400"> Capture <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-orange-400"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-green-500 invisible"> Validate <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-green-500"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-blue-400 invisible"> Enrich <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-blue-400"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-purple-500 invisible"> Activate <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-purple-500"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-rose-500 invisible"> Learn <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-rose-500"></span> </p> </div> <h3 class="font-syne text-2xl font-bold text-gray-900 mb-3">Every conversion, every source.</h3> <p class="text-sm text-gray-500 leading-relaxed mb-8">Web, mobile, CRM, payments, offline. Journify captures real-world conversion data before browser restrictions and iOS limitations strip it out. Nothing is left on the table.</p> </div> <div class="w-full"> <div class="w-full mask-[linear-gradient(to_right,transparent,black_15%,black_85%,transparent)]"> <div class="grid grid-cols-7 gap-2"> <div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="0.89em" height="1em" class="size-8 object-contain rounded" data-icon="tiktok">
310   <symbol id="ai:local:tiktok" viewBox="0 0 293768 333327"><g fill-rule="evenodd"><path fill="#26f4ee" d="M204958 0c5369 45832 32829 78170 77253 81022v43471l-287 27V87593c-44424-2850-69965-30183-75333-76015l-47060-1v192819c6791 86790-60835 89368-86703 56462 30342 18977 79608 6642 73766-68039V0h58365zM78515 319644c-26591-5471-50770-21358-64969-44588-34496-56437-3401-148418 96651-157884v54345l-164 27v-40773C17274 145544 7961 245185 33650 286633c9906 15984 26169 27227 44864 33011z"/><path fill="#fb2c53" d="M218434 11587c3505 29920 15609 55386 35948 70259-27522-10602-43651-34934-47791-70262zm63489 82463c3786 804 7734 1348 11844 1611v51530c-25770 2537-48321-5946-74600-21749l4034 88251c0 28460 106 41467-15166 67648-34260 58734-95927 63376-137628 35401 54529 22502 137077-4810 136916-103049v-96320c26279 15803 48830 24286 74600 21748zm-171890 37247c5390-1122 11048-1985 16998-2548v54345c-21666 3569-35427 10222-41862 22528-20267 38754 5827 69491 35017 74111-33931 5638-73721-28750-49999-74111 6434-12304 18180-18959 39846-22528zm64479-119719h1808z"/><path fill="currentColor" d="M206590 11578c5369 45832 30910 73164 75333 76015v51528c-25770 2539-48321-5945-74600-21748v96320c206 125717-135035 135283-173673 72939-25688-41449-16376-141089 76383-155862v52323c-21666 3569-33412 10224-39846 22528-39762 76035 98926 121273 89342-1225V11577l47060 1z"/></g></symbol><use href="#ai:local:tiktok"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1em" height="1em" class="size-8 object-contain rounded" data-icon="javascript">   <symbol id="ai:local:javascript" viewBox="0 0 256 256"><path fill="#F7DF1E" d="M0 0h256v256H0z"/><path d="m67.312 213.932 19.59-11.856c3.78 6.701 7.218 12.371 15.465 12.371 7.905 0 12.89-3.092 12.89-15.12v-81.798h24.057v82.138c0 24.917-14.606 36.259-35.916 36.259-19.245 0-30.416-9.967-36.087-21.996m85.07-2.576 19.588-11.341c5.157 8.421 11.859 14.607 23.715 14.607 9.969 0 16.325-4.984 16.325-11.858 0-8.248-6.53-11.17-17.528-15.98l-6.013-2.58c-17.357-7.387-28.87-16.667-28.87-36.257 0-18.044 13.747-31.792 35.228-31.792 15.294 0 26.292 5.328 34.196 19.247l-18.732 12.03c-4.125-7.389-8.591-10.31-15.465-10.31-7.046 0-11.514 4.468-11.514 10.31 0 7.217 4.468 10.14 14.778 14.608l6.014 2.577c20.45 8.765 31.963 17.7 31.963 37.804 0 21.654-17.012 33.51-39.867 33.51-22.339 0-36.774-10.654-43.819-24.574"/></symbol><use href="#ai:local:javascript"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1em" height="1em" class="size-8 object-contain rounded" data-icon="ios">   <symbol id="ai:local:ios" viewBox="-1.5 0 20 20"><path fill="currentColor" fill-rule="evenodd" d="M11.57 3.193c.73-.845 1.221-2.022 1.087-3.193-1.05.04-2.322.671-3.075 1.515-.677.749-1.267 1.946-1.108 3.094 1.172.087 2.368-.57 3.097-1.416m2.628 7.432c.03 3.027 2.77 4.034 2.801 4.047-.022.07-.438 1.435-1.444 2.845-.87 1.218-1.774 2.43-3.196 2.457-1.398.025-1.848-.794-3.447-.794-1.597 0-2.097.768-3.42.819-1.373.049-2.42-1.318-3.296-2.532C.403 14.984-.967 10.45.873 7.39c.915-1.52 2.548-2.482 4.321-2.506 1.348-.025 2.621.869 3.445.869.825 0 2.372-1.075 3.998-.917.68.027 2.591.263 3.818 1.984-.1.059-2.28 1.275-2.256 3.805"/></symbol><use href="#ai:local:ios"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1em" height="1em" class="size-8 object-contain rounded" data-icon="bigquery">   <symbol id="ai:local:bigquery" viewBox="0 0 64 64"><path fill="#4386fa" d="M14.48 58.196.558 34.082a4.16 4.16 0 0 1 0-4.164L14.48 5.805a4.16 4.16 0 0 1 3.6-2.082h27.857c1.48.007 2.845.8 3.585 2.082l13.92 24.113a4.16 4.16 0 0 1 0 4.164L49.52 58.196a4.16 4.16 0 0 1-3.6 2.082H18.07a4.17 4.17 0 0 1-3.593-2.082z"/><path fill="currentColor" d="M40.697 24.235s3.87 9.283-1.406 14.545-14.883 1.894-14.883 1.894L43.95 60.27h1.984a4.16 4.16 0 0 0 3.6-2.082L58.75 42.23z" opacity=".1"/><path fill="#fff" d="M45.267 43.23 41 38.953a.7.7 0 0 0-.158-.12 11.63 11.63 0 1 0-2.032 2.037.7.7 0 0 0 .113.15l4.277 4.277a.67.67 0 0 0 .947 0l1.12-1.12a.67.67 0 0 0 0-.947M31.64 40.464a8.75 8.75 0 1 1 8.749-8.749 8.75 8.75 0 0 1-8.749 8.749m-5.593-9.216v3.616a6.4 6.4 0 0 0 2.338 2.375v-6.013zm4.375-2.998v9.772a6.5 6.5 0 0 0 2.338 0V28.25zm6.764 6.606v-2.142H34.85v4.5a6.43 6.43 0 0 0 2.338-2.368z"/></symbol><use href="#ai:local:bigquery"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1.19em" height="1em" class="size-8 object-contain rounded" data-icon="salla">
310   <symbol id="ai:local:salla" viewBox="0 0 208 175"><g fill="#004956"><path d="M207.43 124.06 197.32 39.8C194.6 17.11 175.32 0 152.47 0H55.94C33.09 0 13.81 17.11 11.09 39.8L.99 124.06a45.17 45.17 0 0 0 44.85 50.55h116.74c12.9 0 25.22-5.53 33.79-15.19a45.2 45.2 0 0 0 11.06-35.36m-27.69 20.71c-4.59 5.17-10.92 8.01-17.82 8.01H46.49c-6.91 0-13.24-2.84-17.82-8.01-4.59-5.17-6.65-11.79-5.83-18.65l9.98-83.31c1.43-11.96 11.6-20.98 23.65-20.98h95.46c12.05 0 22.22 9.03 23.65 20.98l9.99 83.31c.82 6.86-1.26 13.48-5.83 18.65"/><path d="M162.2 98.19a10.8 10.8 0 0 0-6.88-4.71c-2.85-.6-5.76-.05-8.19 1.53-29.07 18.95-57.35 18.95-86.47 0a10.8 10.8 0 0 0-8.19-1.53c-2.85.6-5.29 2.27-6.87 4.71a10.8 10.8 0 0 0-1.53 8.19c.6 2.85 2.27 5.29 4.71 6.87 18.2 11.85 36.75 17.85 55.14 17.85s36.93-6.01 55.1-17.86a10.8 10.8 0 0 0 4.71-6.88c.6-2.85.05-5.75-1.53-8.19z"/></g></symbol><use href="#ai:local:salla"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1em" height="1em" class="size-8 object-contain rounded" data-icon="magento">   <symbol id="ai:local:magento" viewBox="-4.5 0 54 54"><path fill="#F37B1F" fill-rule="evenodd" d="M22.486 0 0 13.845v26.308l5.84 3.496V17.34L22.49 7.05l16.666 10.274.069.04-.008 26.247L45 40.153V13.845zm2.976 46.957-2.976 1.848-2.979-1.858V16.22l-7.713 4.826v26.305L22.486 54l10.782-6.695V21.03l-7.806-4.833z"/></symbol><use href="#ai:local:magento"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1em" height="1em" class="size-8 object-contain rounded" data-icon="zid">   <symbol id="ai:local:zid" viewBox="0 0 215.95 215.95"><defs><style>.cls-1{fill-rule:evenodd;fill:#1f0433}</style></defs><path d="M107.98 19.31a9.98 9.98 0 0 0-10.01 10.01c0 11.25 3.55 22.15 10.01 31.19a53.7 53.7 0 0 0 10.01-31.19c0-5.55-4.46-10.01-10.01-10.01m13.33 55.57c10.29-12.87 15.98-28.93 15.98-45.56S124.19 0 107.98 0 78.66 13.11 78.66 29.32s5.7 32.7 15.98 45.56L74.89 94.63C62.02 84.34 45.96 78.65 29.33 78.65S0 91.76 0 107.97s13.11 29.32 29.32 29.32 32.7-5.7 45.56-15.98l19.75 19.75c-10.29 12.87-15.98 28.93-15.98 45.56s13.11 29.32 29.32 29.32 29.32-13.11 29.32-29.32-5.7-32.7-15.98-45.56l19.75-19.75c12.87 10.29 28.93 15.98 45.56 15.98s29.32-13.11 29.32-29.32-13.11-29.32-29.32-29.32-32.7 5.7-45.56 15.98zm-13.33 13.98-19.12 19.12 19.12 19.12 19.12-19.12zm47.46 19.11a53.7 53.7 0 0 0 31.19 10.01c5.55 0 10.01-4.46 10.01-10.01s-4.46-10.01-10.01-10.01c-11.25 0-22.15 3.55-31.19 10.01m-47.46 47.46a53.7 53.7 0 0 0-10.01 31.19c0 5.55 4.46 10.01 10.01 10.01s10.01-4.46 10.01-10.01c0-11.25-3.55-22.15-10.01-31.19m-47.46-47.46a53.7 53.7 0 0 0-31.19-10.01c-5.55 0-10.01 4.46-10.01 10.01s4.46 10.01 10.01 10.01c11.25 0 22.15-3.55 31.19-10.01" class="cls-1"/><path d="M107.97 19.31a9.98 9.98 0 0 0-10.01 10.01c0 11.25 3.55 22.15 10.01 31.19a53.7 53.7 0 0 0 10.01-31.19c0-5.55-4.46-10.01-10.01-10.01m13.34 55.57c10.29-12.87 15.98-28.93 15.98-45.56S124.19 0 107.97 0 78.65 13.11 78.65 29.32s5.7 32.7 15.98 45.56L74.88 94.63C62.01 84.34 45.95 78.65 29.32 78.65S0 91.76 0 107.97s13.11 29.32 29.32 29.32 32.7-5.7 45.56-15.98l19.75 19.75c-10.29 12.87-15.98 28.93-15.98 45.56s13.11 29.32 29.32 29.32 29.32-13.11 29.32-29.32-5.7-32.7-15.98-45.56l19.75-19.75c12.87 10.29 28.93 15.98 45.56 15.98s29.32-13.11 29.32-29.32-13.11-29.32-29.32-29.32-32.7 5.7-45.56 15.98zm-13.34 13.98-19.12 19.12 19.12 19.12 19.12-19.12zm47.46 19.11a53.7 53.7 0 0 0 31.19 10.01c5.55 0 10.01-4.46 10.01-10.01s-4.46-10.01-10.01-10.01c-11.25 0-22.15 3.55-31.19 10.01m-47.46 47.46a53.7 53.7 0 0 0-10.01 31.19c0 5.55 4.46 10.01 10.01 10.01s10.01-4.46 10.01-10.01c0-11.25-3.55-22.15-10.01-31.19m-47.46-47.46a53.7 53.7 0 0 0-31.19-10.01c-5.55 0-10.01 4.46-10.01 10.01s4.46 10.01 10.01 10.01c11.25 0 22.15-3.55 31.19-10.01" class="cls-1"/></symbol><use href="#ai:local:zid"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1.01em" height="1em" class="size-8 object-contain rounded" data-icon="snowflake">   <symbol id="ai:local:snowflake" viewBox="0 0 1565 1559"><defs><clipPath id="a" clipPathUnits="userSpaceOnUse"><path d="M.24 0h6893.02v1558.22H.24z"/>
310</clipPath></defs><g clip-path="url(#a)"><path fill="#29b5e8" fill-rule="evenodd" d="M522.63 807.57c-7 22.5-22.19 42.49-44.56 55.27l-331.35 189.85c-46.8 26.7-106.42 10.87-133.28-35.31-27.03-46.44-11.12-105.52 35.64-132.3l185.18-105.91L49.08 672.98c-46.76-26.74-62.75-85.83-35.64-132.1 26.86-46.3 86.48-62.18 133.28-35.48l331.35 189.73c23.3 13.33 38.87 34.47 45.41 58.11 2.2 7.6 3.18 15.2 3.56 22.84.26 10.52-1.1 21.18-4.41 31.49m89.91 177.81c50.46 3.6 90.3 45.46 90.3 96.39v379.59c0 53.53-43.79 96.86-97.55 96.86-54.02 0-97.64-43.33-97.64-96.86v-212.31l-185.81 106.24c-46.59 26.91-106.17 10.99-133.24-35.23-26.9-46.31-10.99-105.69 35.69-132.43L555.9 998.02c17.82-10.31 37.59-14.26 56.64-12.64m339.63-412.53c-50.58-3.7-90.34-45.63-90.34-96.52V96.69c0-53.35 43.54-96.69 97.6-96.69 54.01 0 97.64 43.34 97.64 96.69v212.44l185.68-106.41c46.68-26.74 106.29-10.87 133.2 35.36 26.85 46.48 11.03 105.6-35.69 132.34L1008.69 560.2c-17.82 10.18-37.55 14.17-56.52 12.65M224.29 370.42c-46.68-26.74-62.59-85.86-35.69-132.34 27.07-46.23 86.65-62.1 133.24-35.36l185.81 106.41V96.69C507.65 43.34 551.27 0 605.29 0c53.76 0 97.55 43.34 97.55 96.69v379.64c0 50.89-39.84 92.82-90.3 96.52-19.05 1.52-38.82-2.47-56.64-12.65zm595.54 582.32c-3.95 4.03-11.55 7.3-17.32 7.3h-40.52c-5.56 0-13.28-3.27-17.31-7.3L606.94 816.27c-3.94-3.86-7.13-11.59-7.13-17.02v-40.28c0-5.56 3.19-13.28 7.13-17.19l137.74-136.51c4.03-3.98 11.75-7.17 17.31-7.17h40.52c5.65 0 13.37 3.19 17.32 7.17l137.82 136.51c3.94 3.91 7.12 11.63 7.12 17.19v40.28c0 5.43-3.18 13.16-7.12 17.02zm27.66-174.37c0-5.52-3.35-13.2-7.3-17.28l-39.93-39.39c-3.9-3.9-11.66-7.13-17.22-7.13h-1.57c-5.56 0-13.28 3.23-17.15 7.13l-39.92 39.39c-3.99 4.08-7.05 11.76-7.05 17.28v1.57c0 5.43 3.06 13.03 7.05 17.02l39.92 39.47c3.91 3.91 11.59 7.13 17.15 7.13h1.57c5.56 0 13.32-3.22 17.22-7.13l39.93-39.47c3.95-3.99 7.3-11.59 7.3-17.02zm492.77 409.26c46.72 26.74 62.54 86.12 35.69 132.43-26.91 46.22-86.57 62.14-133.2 35.23l-185.68-106.24v212.31c0 53.53-43.63 96.86-97.64 96.86-54.06 0-97.6-43.33-97.6-96.86v-379.59c0-50.93 39.76-92.79 90.34-96.39 18.97-1.
31062 38.7 2.33 56.52 12.64zm-9.89-408.46 185.18 105.91c46.76 26.78 62.76 85.86 35.73 132.3-26.99 46.18-86.69 62.01-133.28 35.31l-331.61-189.85c-22.15-12.78-37.47-32.77-44.3-55.27-3.23-10.31-4.76-20.97-4.37-31.49.17-7.64 1.31-15.24 3.43-22.84 6.62-23.64 22.2-44.78 45.24-58.11L1418 505.4c46.59-26.7 106.29-10.82 133.28 35.48 27.03 46.27 11.03 105.36-35.73 132.1z"/></g></symbol><use href="#ai:local:snowflake"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1em" height="1em" class="size-8 object-contain rounded" data-icon="gtm">   <symbol id="ai:local:gtm" viewBox="0 0 256 256"><path fill="#8AB4F8" d="m150.262 245.516-44.437-43.33 95.433-97.455 46.007 45.09z"/><path fill="#4285F4" d="M150.45 53.938 106.176 8.731 9.36 104.629c-12.48 12.48-12.48 32.713 0 45.207l95.36 95.986 45.09-42.182-72.654-76.407z"/><path fill="#8AB4F8" d="m246.625 105.37-96-96c-12.494-12.494-32.756-12.494-45.25 0s-12.495 32.757 0 45.252l96 96c12.494 12.494 32.756 12.494 45.25 0s12.495-32.757 0-45.251"/><circle cx="127.265" cy="224.731" r="31.273" fill="#246FDB"/></symbol><use href="#ai:local:gtm"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1.43em" height="1em" class="size-8 object-contain rounded" data-icon="salesforce">   <symbol id="ai:local:salesforce" viewBox="0.5 0.5 999 699.242"><path fill="#00A1E0" d="M416.224 76.763c32.219-33.57 77.074-54.391 126.682-54.391 65.946 0 123.48 36.772 154.12 91.361 26.626-11.896 56.098-18.514 87.106-18.514 118.94 0 215.368 97.268 215.368 217.247 0 119.993-96.428 217.261-215.368 217.261a213.7 213.7 0 0 1-42.422-4.227c-26.981 48.128-78.397 80.646-137.412 80.646-24.705 0-48.072-5.706-68.877-15.853-27.352 64.337-91.077 109.448-165.348 109.448-77.344 0-143.261-48.939-168.563-117.574-11.057 2.348-22.513 3.572-34.268 3.572C75.155 585.74.5 510.317.5 417.262c0-62.359 33.542-116.807 83.378-145.937-10.26-23.608-15.967-49.665-15.967-77.06C67.911 87.25 154.79.5 261.948.5c62.914 0 118.827 29.913 154.276 76.263"/><path fill="#FFF" d="M145.196 363.11c-.626 1.637.228 1.979.427 2.263 1.878 1.366 3.786 2.349 5.707 3.444 10.189 5.407 19.81 6.986 29.871 6.986 20.492 0 33.214-10.9 33.214-28.447v-.341c0-16.224-14.358-22.115-27.835-26.37l-1.75-.569c-10.161-3.302-18.927-6.147-18.927-12.836v-.355c0-5.721 5.123-9.934 13.064-9.934 8.823 0 19.297 2.932 26.042 6.66 0 0 1.978 1.281 2.704-.64.398-1.025 3.814-10.218 4.17-11.214.384-1.082-.299-1.879-.996-2.306-7.699-4.682-18.344-7.884-29.358-7.884l-2.049.014c-18.756 0-31.848 11.328-31.848 27.565v.342c0 17.119 14.444 22.669 27.978 26.54l2.177.669c9.862 3.031 18.358 5.635 18.358 12.58v.342c0 6.347-5.521 11.071-14.43 11.071-3.458 0-14.487-.071-26.398-7.6-1.438-.84-2.277-1.451-3.387-2.12-.583-.37-2.049-1.011-2.689.925zm299.998 0c-.626 1.637.228 1.979.427 2.263 1.878 1.366 3.786 2.349 5.706 3.444 10.189 5.407 19.811 6.986 29.871 6.986 20.492 0 33.215-10.9 33.215-28.447v-.341c0-16.224-14.359-22.115-27.836-26.37l-1.75-.569c-10.161-3.302-18.928-6.147-18.928-12.836v-.355c0-5.721 5.123-9.934 13.064-9.934 8.823 0 19.297 2.932 26.043 6.66 0 0 1.978 1.281 2.703-.64.398-1.025 3.814-10.218 4.17-11.214.385-1.082-.299-1.879-.996-2.306-7.699-4.682-18.344-7.884-29.358-7.884l-2.05.014c-18.756 0-31.848 11.328-31.848 27.565v.342c0 17.119 14.444 22.669 27.978 26.54l2.177.669c9.862 3.031 18.373 5.635 18.373 12.58v.342c0 6.347-5.536 11.071-14.445 11.071-3.457 0-14.486-.071-26.397-7.6-1.438-.84-2.291-1.423-3.372-2.12-.371-.242-2.107-.911-2.705.925zm204.801-34.37c0 9.919-1.85 17.731-5.493 23.253-3.601 5.465-9.051 8.126-16.649 8.126-7.613 0-13.035-2.647-16.579-8.126-3.587-5.507-5.407-13.334-5.407-23.253 0-9.904 1.82-17.703 5.407-23.168 3.544-5.407 8.966-8.04 16.579-8.04 7.599 0 13.049 2.633 16.664 8.04 3.629 5.464 5.478 13.263 5.478 23.168m17.106-18.386c-1.68-5.679-4.298-10.688-7.784-14.857-3.487-4.184-7.898-7.542-13.136-9.99-5.223-2.433-11.398-3.671-18.328-3.671-6.945 0-13.121 1.238-18.344 3.671-5.237 2.448-9.648 5.807-13.149 9.99-3.472 4.184-6.091 9.193-7.784 14.857-1.665 5.649-2.505 11.825-2.505 18.386s.84 12.751 2.505 18.386c1.693 5.664 4.298 10.674 7.799 14.857 3.486 4.184 7.912 7.528 13.135 9.904 5.236 2.377 11.398 3.586 18.344 3.586 6.93 0 13.092-1.209 18.328-3.586 5.223-2.376 9.648-5.721 13.136-9.904 3.486-4.17 6.104-9.179 7.784-14.857 1.68-5.649 2.519-11.84 2.519-18.386s-.841-12.737-2.52-18.386m140.467 47.116c-.569-1.665-2.177-1.039-2.177-1.039-2.49.954-5.138 1.836-7.955 2.277-2.861.44-6.006.669-9.379.669-8.281 0-14.856-2.462-19.566-7.329-4.725-4.867-7.372-12.736-7.344-23.381.029-9.691 2.362-16.978 6.561-22.527 4.17-5.521 10.517-8.354 18.984-8.354 7.059 0 12.438.811 18.072 2.59 0 0 1.352.583 1.992-1.181 1.494-4.156 2.604-7.13 4.198-11.698.456-1.295-.654-1.85-1.053-2.007-2.22-.868-7.457-2.276-11.413-2.874-3.7-.569-8.026-.868-12.836-.868-7.188 0-13.591 1.224-19.069 3.672-5.465 2.433-10.104 5.791-13.775 9.976-3.672 4.184-6.461 9.192-8.325 14.856-1.85 5.649-2.789 11.854-2.789 18.415 0 14.188 3.828 25.657 11.385 34.054 7.5
3107 8.425 18.941 12.708 33.77 12.708 8.766 0 17.76-1.778 24.221-4.326 0 0 1.238-.598.697-2.034zm29.929-38.232c.811-5.507 2.334-10.09 4.682-13.661 3.544-5.422 8.951-8.396 16.551-8.396s12.623 2.988 16.223 8.396c2.391 3.571 3.43 8.354 3.843 13.661zm57.592-12.111c-1.451-5.479-5.052-11.015-7.414-13.548-3.729-4.013-7.371-6.816-10.986-8.382-4.725-2.021-10.389-3.358-16.593-3.358-7.229 0-13.79 1.21-19.112 3.714-5.336 2.505-9.818 5.921-13.334 10.176-3.516 4.24-6.162 9.292-7.842 15.027-1.693 5.707-2.547 11.926-2.547 18.485 0 6.675.883 12.894 2.633 18.486 1.765 5.636 4.582 10.602 8.396 14.714 3.799 4.142 8.695 7.387 14.558 9.648 5.821 2.249 12.894 3.416 21.019 3.401 16.722-.057 25.53-3.785 29.159-5.792.641-.355 1.253-.981.483-2.774l-3.785-10.603c-.568-1.579-2.177-.996-2.177-.996-4.142 1.537-10.032 4.298-23.766 4.27-8.979-.014-15.64-2.661-19.81-6.803-4.283-4.24-6.375-10.474-6.745-19.268l57.905.057s1.522-.028 1.68-1.509c.057-.624 1.993-11.895-1.722-24.945m-521.327 12.111c.825-5.507 2.334-10.09 4.682-13.661 3.543-5.422 8.951-8.396 16.55-8.396s12.623 2.988 16.237 8.396c2.376 3.571 3.415 8.354 3.828 13.661zm57.577-12.111c-1.451-5.479-5.037-11.015-7.399-13.548-3.729-4.013-7.372-6.816-10.986-8.382-4.725-2.021-10.388-3.358-16.593-3.358-7.215 0-13.79 1.21-19.112 3.714-5.336 2.505-9.819 5.921-13.334 10.176-3.515 4.24-6.162 9.292-7.841 15.027-1.679 5.707-2.547 11.926-2.547 18.485 0 6.675.882 12.894 2.633 18.486 1.765 5.636 4.583 10.602 8.396 14.714 3.8 4.142 8.695 7.387 14.558 9.648 5.821 2.249 12.893 3.416 21.019 3.401 16.721-.057 25.53-3.785 29.159-5.792.641-.355 1.252-.981.484-2.774l-3.771-10.603c-.584-1.579-2.191-.996-2.191-.996-4.141 1.537-10.019 4.298-23.78 4.27-8.965-.014-15.625-2.661-19.795-6.803-4.284-4.24-6.375-10.474-6.746-19.268l57.905.057s1.522-.028 1.679-1.509c.055-.624 1.99-11.895-1.738-24.945m-182.738 50.026c-2.263-1.808-2.576-2.263-3.344-3.43-1.139-1.779-1.722-4.312-1.722-7.528 0-5.095 1.679-8.752 5.166-11.214-.042.015 4.981-4.34 16.792-4.184 8.296.114 15.71 1.338 15.71 1.338v26.327h.014s-7.357 1.579-15.639 2.077c-11.783.712-17.02-3.4-16.977-3.386m23.039-40.686c-2.348-.171-5.394-.271-9.037-.271-4.966 0-9.762.626-14.259 1.836-4.525 1.209-8.595 3.103-12.096 5.606a27.9 27.9 0 0 0-8.396 9.549c-2.049 3.814-3.088 8.311-3.088 13.349 0 5.123.882 9.577 2.647 13.221 1.765 3.657 4.312 6.702 7.556 9.051 3.216 2.348 7.187 4.069 11.797 5.108 4.54 1.039 9.691 1.565 15.327 1.565 5.934 0 11.854-.483 17.589-1.466 5.678-.968 12.651-2.377 14.586-2.817a146 146 0 0 0 4.056-1.039c1.438-.355 1.324-1.893 1.324-1.893l-.029-52.952c0-11.613-3.102-20.223-9.207-25.559-6.077-5.322-15.028-8.013-26.597-8.013-4.341 0-11.328.599-15.512 1.438 0 0-12.651 2.448-17.86 6.518 0 0-1.138.712-.512 2.306l4.099 11.015c.512 1.423 1.893.939 1.893.939s.441-.171.954-.47c11.143-6.062 25.231-5.877 25.231-5.877 6.262 0 11.072 1.252 14.316 3.742 3.159 2.419 4.767 6.076 4.767 13.789v2.448a210 210 0 0 0-9.549-1.123m467.029-29.836c.44-1.31-.484-1.936-.869-2.078-.981-.384-5.905-1.423-9.705-1.665-7.271-.441-11.312.783-14.928 2.405-3.586 1.622-7.57 4.24-9.791 7.215v-7.044c0-.982-.697-1.765-1.665-1.765h-14.843c-.967 0-1.664.782-1.664 1.765v86.366c0 .968.797 1.765 1.764 1.765h15.213a1.76 1.76 0 0 0 1.75-1.765v-43.147c0-5.792.641-11.569 1.922-15.198 1.252-3.587 2.96-6.461 5.066-8.525 2.12-2.049 4.525-3.486 7.158-4.297 2.689-.826 5.663-1.096 7.77-1.096 3.031 0 6.361.782 6.361.782 1.109.128 1.736-.555 2.105-1.565.997-2.647 3.815-10.574 4.356-12.153"/><path fill="#FFF" d="M595.874 246.603c-1.85-.569-3.529-.954-5.721-1.366-2.221-.398-4.867-.598-7.869-.598-10.475 0-18.729 2.96-24.52 8.794-5.764 5.807-9.678 14.644-11.642 26.271l-.712 3.913h-13.148s-1.594-.057-1.936 1.68l-2.148 12.053c-.157 1.139.342 1.864 1.878 1.864h12.794l-12.979 72.463c-1.011 5.835-2.178 10.631-3.473 14.273-1.267 3.587-2.504 6.276-4.041 8.24-1.48 1.879-2.875 3.273-5.295 4.084-1.992.669-4.297.982-6.816.982-1.395 0-3.258-.229-4.639-.513-1.366-.271-2.092-.569-3.131-1.011 0 0-1.494-.568-2.092.926-.47 1.238-3.885 10.615-4.298 11.769-.398 1.152.171 2.049.896 2.319 1.708.598 2.974.996 5.294 1.551 3.217.755 5.934.797 8.481.797 5.322 0 10.189-.754 14.217-2.205 4.042-1.466 7.57-4.014 10.701-7.457 3.373-3.729 5.493-7.628 7.515-12.964 2.006-5.266 3.729-11.812 5.094-19.439l13.05-73.815h19.069s1.607.057 1.936-1.693l2.162-12.039c.143-1.152-.341-1.864-1.893-1.864h-18.514c.1-.412.939-6.931 3.06-13.063.911-2.604 2.618-4.725 4.056-6.177 1.424-1.423 3.06-2.433 4.854-3.017 1.835-.598 3.928-.882 6.219-.882 1.736 0 3.457.199 4.752.469 1.793.385 2.49.584 2.961.727 1.893.569 2.148.014 2.519-.896l4.426-12.153c.45
3105-1.312-.669-1.867-1.067-2.023m-258.68 125.231c0 .968-.697 1.751-1.665 1.751h-15.355c-.968 0-1.651-.783-1.651-1.751v-123.58c0-.967.683-1.75 1.651-1.75h15.355c.968 0 1.665.783 1.665 1.75z"/></symbol><use href="#ai:local:salesforce"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1.15em" height="1em" class="size-8 object-contain rounded" data-icon="android">   <symbol id="ai:local:android" viewBox="0 -1.062 402.103 352.074"><path fill="currentColor" d="M27.919 290.168C11.868 290.266 0 303.726 0 320.568c0 17.851 12.964 30.303 28.114 30.303s26.752-14.008 26.752-30.303c0-16.489-11.796-30.492-26.947-30.4m2.578 49.127c-9.483 0-17.17-8.362-17.17-18.678 0-11.382 7.687-18.678 17.17-18.678 9.777 0 17.17 8.362 17.17 18.678s-7.687 18.678-17.17 18.678"/><path fill="currentColor" d="M46.596 291.53v18.913h4.281v20.152h-4.281v15.655c0 1.961 1.634 3.551 3.648 3.551h9.291V291.53zm117.996-1.362c-16.051.098-27.919 13.558-27.919 30.4 0 17.851 12.964 30.303 28.114 30.303s26.752-14.008 26.752-30.303c0-16.489-11.797-30.492-26.947-30.4m2.577 49.127c-9.483 0-17.17-8.362-17.17-18.678 0-11.382 7.687-18.678 17.17-18.678 9.777 0 17.17 8.362 17.17 18.678s-7.687 18.678-17.17 18.678"/><path fill="currentColor" d="M183.269 262.089v48.354h4.281v20.152h-4.281v15.655c0 1.961 1.634 3.551 3.648 3.551h9.291v-87.713h-12.939zm187.057 28.079c-16.052.098-27.92 13.558-27.92 30.4 0 17.851 12.964 30.303 28.113 30.303 15.151 0 26.753-14.008 26.753-30.303 0-16.489-11.795-30.492-26.946-30.4m2.577 49.127c-9.483 0-17.17-8.362-17.17-18.678 0-11.382 7.687-18.678 17.17-18.678 9.776 0 17.17 8.362 17.17 18.678s-7.686 18.678-17.17 18.678"/><path fill="currentColor" d="M389.002 262.089v48.354h4.281v20.152h-4.281v15.655c0 1.961 1.635 3.551 3.648 3.551h9.291v-87.713h-12.939zm-69.729 68.507v15.655c0 1.961 1.635 3.551 3.648 3.551h9.291v-58.283h-12.939v18.925zm-245.333 0v15.655c0 1.961 1.635 3.551 3.648 3.551h9.291v-58.283H73.94v18.925z"/><path fill="currentColor" d="M104.557 290.155s-13.385-.518-18.432 10.129v19.54l.716 2.085c-.294-20.507 14.606-19.986 14.606-19.986 8.569 0 11.128 6.695 11.88 10.2 0 0 .329 1.404.307 4.139v29.989c0 1.961 1.635 3.551 3.648 3.551h9.291v-37.644s.218-22.003-22.016-22.003m106.05 40.441v15.655c0 1.961 1.635 3.551 3.648 3.551h9.291v-58.283h-12.939v18.925z"/><ellipse cx="325.581" cy="270.244" fill="currentColor" rx="8.71" ry="8.68"/><path fill="currentColor" d="M278.375 290.012c-16.983 0-30.531 13.435-30.531 30.28s12.531 30.72 30.531 30.72 30.75-13.655 30.75-30.5-13.767-30.5-30.75-30.5m.063 48.875c-9.63 0-17.438-8.198-17.438-18.312s7.808-18.312 17.438-18.312 17.438 8.198 17.438 18.312-7.809 18.312-17.438 18.312m-55.688-35.125c4.625-16.5 21.125-12.625 21.125-12.625v13.469s-19.391-6.554-20.328 17.03z"/><g fill="#62b578"><path d="M121.211 71.926c1.654 2.871.413 6.687-2.771 8.521-3.187 1.833-7.109.992-8.764-1.88l-39.42-68.461c-1.652-2.872-1.098-7.5 2.088-9.334s7.794-.18 9.447 2.692zm160.178 0c-1.652 2.871-.412 6.687 2.773 8.521 3.186 1.833 7.107.992 8.762-1.88l39.42-68.461c1.653-2.872 1.098-7.5-2.088-9.334s-7.793-.18-9.446 2.692z"/><path d="M201.375 43.387c-106.287 0-193.32 79.84-200.729 181h401.457c-7.407-101.16-94.44-181-200.728-181m-92.354 125.438c-9.385 0-16.992-7.607-16.992-16.992s7.607-16.992 16.992-16.992 16.992 7.607 16.992 16.992-7.607 16.992-16.992 16.992m184.348 0c-9.385 0-16.992-7.607-16.992-16.992s7.607-16.992 16.992-16.992 16.992 7.607 16.992 16.992-7.607 16.992-16.992 16.992"/></g></symbol><use href="#ai:local:android"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1em" height="1em" class="size-8 object-contain rounded" data-icon="sheet">   <symbol id="ai:local:sheet" viewBox="-4 0 64 64"><path fill="#45B058" fill-rule="evenodd" d="M5.112.006A5.074 5.074 0 0 0 .039 5.08v53.841a5.073 5.073 0 0 0 5.073 5.074h45.774a5.074 5.074 0 0 0 5.074-5.074V20.316L37.058.006z" clip-rule="evenodd"/><path fill="#fff" d="M19.429 53.938a.64.64 0 0 1-.54-.27l-3.728-4.97-3.745 4.97a.64.64 0 0 1-.54.27.71.71 0 0 1-.72-.72c0-.144.035-.306.144-.432l3.89-5.131-3.619-4.826a.72.72 0 0 1-.145-.414c0-.342.288-.72.721-.72.216 0 .432.108.576.288l3.438 4.628 3.438-4.646a.64.64 0 0 1 .541-.27c.378 0 .738.306.738.72a.7.7 0 0 1-.127.414l-3.619 4.808 3.891 5.149a.7.7 0 0 1 .125.414c0 .396-.324.738-.719.738m9.989-.126h-5.455a1.083 1.083 0 0 1-1.081-1.08V42.415c0-.396.324-.72.774-.72.396 0 .721.324.721.72V52.48h5.041c.359 0 .648.288.648.648 0 .396-.289.684-.648.684m6.982.216c-1.782 0-3.188-.594
310-4.213-1.495a.71.71 0 0 1-.234-.54c0-.36.27-.756.702-.756.144 0 .306.036.433.144.828.738 1.98 1.314 3.367 1.314 2.143 0 2.826-1.152 2.826-2.071 0-3.097-7.111-1.386-7.111-5.672 0-1.98 1.764-3.331 4.123-3.331 1.548 0 2.881.468 3.853 1.278a.73.73 0 0 1 .253.54c0 .36-.307.72-.703.72a.68.68 0 0 1-.432-.162c-.883-.72-1.98-1.044-3.079-1.044-1.44 0-2.467.774-2.467 1.909 0 2.701 7.112 1.152 7.112 5.636 0 1.748-1.188 3.53-4.43 3.53"/><path fill="#349C42" fill-rule="evenodd" d="M55.953 20.352v1H43.152s-6.312-1.26-6.127-6.707c0 0 .207 5.707 6.002 5.707z" clip-rule="evenodd"/><path fill="#fff" fill-rule="evenodd" d="M37.049 0v14.561c0 1.656 1.104 5.791 6.104 5.791h12.801z" clip-rule="evenodd" opacity=".5"/></symbol><use href="#ai:local:sheet"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="0.74em" height="1em" class="size-8 object-contain rounded" data-icon="java">   <symbol id="ai:local:java" viewBox="0 0 256 346"><path fill="#5382A1" d="M82.554 267.473s-13.198 7.675 9.393 10.272c27.369 3.122 41.356 2.675 71.517-3.034 0 0 7.93 4.972 19.003 9.279-67.611 28.977-153.019-1.679-99.913-16.517m-8.262-37.814s-14.803 10.958 7.805 13.296c29.236 3.016 52.324 3.263 92.276-4.43 0 0 5.526 5.602 14.215 8.666-81.747 23.904-172.798 1.885-114.296-17.532"/><path fill="#E76F00" d="M143.942 165.515c16.66 19.18-4.377 36.44-4.377 36.44s42.301-21.837 22.874-49.183c-18.144-25.5-32.059-38.172 43.268-81.858 0 0-118.238 29.53-61.765 94.6"/><path fill="#5382A1" d="M233.364 295.442s9.767 8.047-10.757 14.273c-39.026 11.823-162.432 15.393-196.714.471-12.323-5.36 10.787-12.8 18.056-14.362 7.581-1.644 11.914-1.337 11.914-1.337-13.705-9.655-88.583 18.957-38.034 27.15 137.853 22.356 251.292-10.066 215.535-26.195M88.9 190.48s-62.771 14.91-22.228 20.323c17.118 2.292 51.243 1.774 83.03-.89 25.978-2.19 52.063-6.85 52.063-6.85s-9.16 3.923-15.787 8.448c-63.744 16.765-186.886 8.966-151.435-8.183 29.981-14.492 54.358-12.848 54.358-12.848m112.605 62.942c64.8-33.672 34.839-66.03 13.927-61.67-5.126 1.066-7.411 1.99-7.411 1.99s1.903-2.98 5.537-4.27c41.37-14.545 73.187 42.897-13.355 65.647 0 .001 1.003-.895 1.302-1.697"/><path fill="#E76F00" d="M162.439.371s35.887 35.9-34.037 91.101c-56.071 44.282-12.786 69.53-.023 98.377-32.73-29.53-56.75-55.526-40.635-79.72C111.395 74.612 176.918 57.393 162.439.37"/><path fill="#5382A1" d="M95.268 344.665c62.199 3.982 157.712-2.209 159.974-31.64 0 0-4.348 11.158-51.404 20.018-53.088 9.99-118.564 8.824-157.399 2.421.001 0 7.95 6.58 48.83 9.201"/></symbol><use href="#ai:local:java"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1em" height="1em" class="size-8 object-contain rounded" data-icon="mysql">   <symbol id="ai:local:mysql" viewBox="-18.458 -22.75 191.151 191.151"><path fill="none" d="M-18.458 6.58h191.151v132.49H-18.458z"/><path fill="#5d87a1" d="M40.054 113.583h-5.175q-.275-13.101-1.511-24.642h-.046l-7.879 24.642h-3.94l-7.832-24.642h-.045q-.871 11.082-1.099 24.642H7.81q.457-16.49 2.289-30.919h6.414l7.465 22.719h.046l7.511-22.719h6.137q2.016 16.903 2.382 30.919m22.443-22.812q-3.161 17.15-8.337 24.928-4.03 5.989-8.84 5.99-1.284-.001-3.16-.77v-2.757c.611.088 1.328.138 2.152.138q2.245 0 3.62-1.238 1.647-1.51 1.647-3.388 0-1.285-1.282-5.268L42.618 90.77h5.084l4.076 13.19q1.374 4.492 1.145 6.277 3.343-8.93 4.673-19.468h4.901z"/><path fill="#f8981d" d="M131.382 113.583h-14.7V82.664h4.945v27.113h9.755zm-18.548.747-5.684-2.805c.504-.414.986-.862 1.42-1.381q3.622-4.256 3.621-12.594 0-15.345-12.045-15.346c-3.938 0-7.01 1.298-9.207 3.895q-3.62 4.259-3.619 12.551c0 5.435 1.068 9.422 3.205 11.951q2.932 3.437 8.843 3.438 2.205 0 4.048-.543l7.4 4.308zm-18.413-6.934q-1.878-3.02-1.878-9.707c0-7.785 2.365-11.682 7.1-11.682q3.71.001 5.449 2.792 1.877 3.025 1.879 9.619 0 11.774-7.099 11.774c-2.476.001-4.29-.928-5.451-2.796m-9.256-2.383q0 3.932-2.884 6.458-2.887 2.518-7.737 2.519c-3.024 0-5.956-.966-8.794-2.888l1.329-2.655q3.662 1.833 6.638 1.831 2.793-.002 4.375-1.232c1.055-.822 1.684-1.975 1.684-3.433 0-1.837-1.281-3.407-3.631-4.722-2.167-1.19-6.501-3.678-6.501-3.678-2.349-1.712-3.525-3.55-3.525-6.578q0-3.76 2.632-6.068 2.635-2.316 6.803-2.315c2.87 0 5.479.769 7.829 2.291l
310-1.192 2.656q-3.015-1.281-5.951-1.281c-1.585 0-2.809.381-3.66 1.146-.858.762-1.387 1.737-1.387 2.933 0 1.828 1.308 3.418 3.722 4.759 2.196 1.192 6.638 3.723 6.638 3.723 2.409 1.709 3.612 3.53 3.612 6.534"/><path fill="#5d87a1" d="M137.59 72.308c-2.99-.076-5.305.225-7.248 1.047-.561.224-1.453.224-1.531.933.303.3.338.784.601 1.198.448.747 1.229 1.752 1.942 2.276.783.6 1.569 1.194 2.393 1.717 1.453.899 3.1 1.422 4.516 2.318.825.521 1.645 1.195 2.471 1.756.406.299.666.784 1.193.971v-.114c-.264-.336-.339-.822-.598-1.196l-1.122-1.082c-1.084-1.456-2.431-2.727-3.884-3.771-1.196-.824-3.812-1.944-4.297-3.322l-.076-.076c.822-.077 1.797-.375 2.578-.604 1.271-.335 2.43-.259 3.734-.594.6-.15 1.195-.338 1.797-.523v-.337c-.676-.673-1.158-1.567-1.869-2.203-1.902-1.643-3.998-3.25-6.164-4.595-1.16-.749-2.652-1.231-3.887-1.868-.445-.225-1.195-.336-1.457-.71-.67-.822-1.047-1.904-1.533-2.877-1.08-2.053-2.129-4.331-3.061-6.502-.674-1.456-1.084-2.91-1.906-4.257-3.85-6.35-8.031-10.196-14.457-13.971-1.381-.786-3.024-1.121-4.779-1.533l-2.803-.148c-.598-.262-1.197-.973-1.719-1.309-2.132-1.344-7.621-4.257-9.189-.411-1.01 2.431 1.494 4.821 2.354 6.054.635.856 1.458 1.83 1.902 2.802.263.635.337 1.309.6 1.98.598 1.644 1.157 3.473 1.943 5.007.41.782.857 1.604 1.381 2.312.3.414.822.597.936 1.272-.521.744-.562 1.867-.861 2.801-1.344 4.221-.819 9.45 1.086 12.552.596.934 2.018 2.99 3.92 2.202 1.684-.672 1.311-2.801 1.795-4.668.111-.451.038-.747.262-1.043v.073c.521 1.045 1.047 2.052 1.53 3.1 1.159 1.829 3.177 3.735 4.858 5.002.895.676 1.604 1.832 2.725 2.245V74.1h-.074c-.227-.335-.559-.485-.857-.745-.674-.673-1.42-1.495-1.943-2.241-1.566-2.093-2.952-4.41-4.182-6.801-.602-1.16-1.121-2.428-1.606-3.586-.226-.447-.226-1.121-.601-1.346-.562.821-1.381 1.532-1.791 2.538-.711 1.609-.785 3.588-1.049 5.646l-.147.072c-1.19-.299-1.604-1.53-2.056-2.575-1.119-2.654-1.307-6.914-.336-9.976.26-.783 1.385-3.249.936-3.995-.225-.715-.973-1.122-1.383-1.685-.482-.708-1.01-1.604-1.346-2.39-.896-2.091-1.347-4.408-2.312-6.498-.451-.974-1.234-1.982-1.868-2.879-.712-1.008-1.495-1.718-2.058-2.913-.186-.411-.447-1.083-.148-1.53.073-.3.225-.412.523-.487.484-.409 1.867.111 2.352.336 1.385.56 2.543 1.083 3.699 1.867.523.375 1.084 1.085 1.755 1.272h.786c1.193.26 2.538.072 3.661.41 1.979.636 3.772 1.569 5.38 2.576 4.893 3.103 8.928 7.512 11.652 12.778.447.858.637 1.644 1.045 2.539.787 1.832 1.76 3.7 2.541 5.493.785 1.755 1.533 3.547 2.654 5.005.559.784 2.805 1.195 3.812 1.606.745.335 1.905.633 2.577 1.044 1.271.783 2.537 1.682 3.732 2.543.595.448 2.465 1.382 2.576 2.13M99.484 39.844a5.8 5.8 0 0 0-1.529.188v.075h.072c.301.597.824 1.011 1.197 1.532.301.599.562 1.193.857 1.791l.072-.074c.527-.373.789-.971.789-1.868-.227-.264-.262-.522-.451-.784-.22-.374-.705-.56-1.007-.86"/><path fill="#f8981d" d="M141.148 113.578h.774v-3.788h-1.161l-.947 2.585-1.029-2.585h-1.118v3.788h.731v-2.882h.041l1.078 2.882h.557l1.074-2.882zm-6.235 0h.819v-3.146h1.072v-.643h-3.008v.643h1.115z"/></symbol><use href="#ai:local:mysql"></use>  </svg> </div> </div> </div> </div> </div> </div><div class="flex flex-col gap-2 md:contents"> <button data-step="1" class="step-btn flex items-center gap-4 bg-white rounded-2xl px-5 py-4 border border-gray-200 text-left cursor-pointer md:col-start-1 [transition:translate_600ms_cubic-bezier(0.34,1.56,0.64,1),background_200ms_ease,border-color_200ms_ease,box-shadow_200ms_ease]" aria-selected="false"> <div class="step-icon w-10 h-10 bg-secondary-100 rounded-xl flex items-center justify-center shrink-0 transition-colors"> <svg width="1em" height="1em" class="step-icon-svg size-6 text-secondary-600 transition-colors" data-icon="ph:seal-check">   <symbol id="ai:ph:seal-check" viewBox="0 0 256 256"><path fill="currentColor" d="M225.86 102.82c-3.77-3.94-7.67-8-9.14-11.57c-1.36-3.27-1.44-8.69-1.52-13.94c-.15-9.76-.31-20.82-8-28.51s-18.75-7.85-28.51-8c-5.25-.08-10.67-.16-13.94-1.52c-3.56-1.47-7.63-5.37-11.57-9.14C146.28 23.51 138.44 16 128 16s-18.27 7.51-25.18 14.14c-3.94 3.77-8 7.67-11.57 9.14c-3.25 1.36-8.69 1.44-13.94 1.52c-9.76.15-20.82.31-28.51 8s-7.8 18.75-8 28.51c-.08 5.25-.16 10.67-1.52 13.94c-1.47 3.56-5.37 7.63-9.14 11.57C23.51 109.72 16 117.56 16 128s7.51 18.27 14.14 25.18c3.77 3.94 7.67 8 9.14 11.57c1.36 3.27 1.44 8.69 1.52 13.94c.15 9.76.31 20.82 8 28.51s18.75 7.85 28.51 8c5.25.08 10.67.16 13.94 1.52c3.56 1.47 7.63 5.37 11.57 9.14c6.9 6.63 14.74 14.14 25.18 14.14s18.27-7.51 25.18-14.14c3.94-3.77 8-7.67 11.57-9.14c3.27-1.36 8.69-1.44 13.94-1.52c9.76-.15 20.82-.31 28.51-8s7.85-18.75 8-28.51c.08-5.25.16-10.67 1.52-13.94c1.47-3.56 5.37-7.63 9.14-11.57c6.63-6.9 14.14-14.74 14.14-25.18s-7.51-18.27-14.14-25.18m-11.55 39.29c-4.79 5-9.75 10.17-12.38 16.52c-2.52 6.1-2.63 13.07-2.73 19.82c-.1 7-.21 14.33-3.32 17.43s-10.39 3.22-17.43 3.32c-6.75.1-13.72.21-19.82 2.73c-6.35 2.63-11.52 7.59-16.52 12.38S132 224 128 224s-9.15-4.92-14.11-9.69s-10.17-9.75-16.52-12.38c-6.1-2.52-13.07-2.63-19.82-2.73c-7-.1-14.33-.21-17.43-3.32s-3.22-10.39-3.32-17.43c-.1-6.75-.21-13.72-2.73-19.82c-2.63-6.35-7.59-11.52-12.38-16.52S32 132 32 128s4.92-9.15 9.69-14.11s9.75-10.17 12.38-16.52c2.52-6.1 2.63-13.07 2.73-19.82c.1-7 .21-14.33 3.32-17.43s10.39-3.22 17.43-3.32c6.75-.1 13.72-.21 19.82-2.73c6.35-2.63 11.52-7.59 16.52-12.38S124 32 128 32s9.15 4.92 14.11 9.69s10.17 9.75 16.52 12.38c6.1 2.52 13.07 2.63 19.82 2.73c7 .1 14.33.21 17.43 3.32s3.22 10.39 3.32 17.43c.1 6.75.21 13.72 2.73 19.82c2.63 6.35 7.59 11.52 12.38 16.52S224 124 224 128s-4.92 9.15-9.69 14.11m-40.65-43.77a8 8 0 0 1 0 11.32l-56 56a8 8 0 0 1-11.32 0l-24-24a8 8 0 0 1 11.32-11.32L112 148.69l50.34-50.35a8 8 0 0 1 11.32 0"/></symbol><use href="#ai:ph:seal-check"></use>  </svg> </div> <div> <div class="step-header flex items-center gap-2 origin-left [transition:scale_300ms_cubic-bezier(0.34,1.56,0.64,1)]"> <span class="text-sm text-black/30">02</span> <p class="font-syne font-bold text-black">Validate</p> </div> <p class="step-desc text-xs text-gray-400 overflow-hidden transition-all duration-300 max-h-10 opacity-100 translate-y-0"> Only usable signals leave this layer. </p> </div> <span class="step-dot ml-auto w-2.5 h-2.5 rounded-full opacity-0 transition-opacity duration-200 shrink-0"></span> </button> <div data-panel="1" class="rounded-3xl p-8 flex-col justify-between transition-all duration-300 md:col-start-2 md:row-start-1 md:row-span-5 shadow-2xl shadow-green-200 border border-green-200 bg-green-50 hidden"> <div> <div class="border-b-2 mb-8 flex justify-between border-green-200"> <p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-orange-400 invisible"> Capture <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-orange-400"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-green-500"> Validate <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-green-500"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-blue-400 invisible"> Enrich <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-blue-400"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-purple-500 invisible"> Activate <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-purple-500"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-rose-500 invisible"> Learn <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-rose-500"></span> </p> </div> <h3 class="font-syne text-2xl font-bold text-gray-900 mb-3">Only usable signals leave this layer.</h3> <p class="text-sm text-gray-500 leading-relaxed mb-8">Every signal is checked before delivery: deduplication, taxonomy alignment, identifier qual
310ity, anomaly detection. Most vendors transmit. Journify validates. A transmitted event the platform cannot use is not a delivered event.</p> </div> <div class="w-full"> <div class="flex items-center gap-2 opacity-70 mask-[linear-gradient(to_right,transparent,black_15%,black_95%,transparent)]"> <div class="flex-1 bg-white rounded-2xl p-2"> <div class="flex items-center justify-between mb-5"> <span class="text-xs font-medium">Your events</span> <span class="text-1xs font-semibold text-rose-400 bg-rose-50 border border-rose-200 rounded-full px-2">
311Invalid
312</span> </div> <ul class="flex flex-col divide-y divide-rose-100"> <li class="flex items-center gap-1 py-1"> <svg width="1em" height="1em" class="size-3 text-rose-400 shrink-0" data-icon="ph:x-circle-fill">   <symbol id="ai:ph:x-circle-fill" viewBox="0 0 256 256"><path fill="currentColor" d="M128 24a104 104 0 1 0 104 104A104.11 104.11 0 0 0 128 24m37.66 130.34a8 8 0 0 1-11.32 11.32L128 139.31l-26.34 26.35a8 8 0 0 1-11.32-11.32L116.69 128l-26.35-26.34a8 8 0 0 1 11.32-11.32L128 116.69l26.34-26.35a8 8 0 0 1 11.32 11.32L139.31 128Z"/></symbol><use href="#ai:ph:x-circle-fill"></use>  </svg> <span class="text-1xs font-mono">product_buy</span> </li><li class="flex items-center gap-1 py-1"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-3 text-rose-400 shrink-0" data-icon="ph:x-circle-fill">   <use href="#ai:ph:x-circle-fill"></use>  </svg> <span class="text-1xs font-mono">start_checkout</span> </li><li class="flex items-center gap-1 py-1"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-3 text-rose-400 shrink-0" data-icon="ph:x-circle-fill">   <use href="#ai:ph:x-circle-fill"></use>  </svg> <span class="text-1xs font-mono">show_item</span> </li> </ul> </div> <div class="flex flex-col shrink-0"> <svg width="1em" height="1em" class="size-6 text-green-600 -rotate-45" data-icon="ph:arrow-bend-right-down">   <symbol id="ai:ph:arrow-bend-right-down" viewBox="0 0 256 256"><path fill="currentColor" d="m205.66 181.66l-48 48a8 8 0 0 1-11.32 0l-48-48a8 8 0 0 1 11.32-11.32L144 204.69V128a88.1 88.1 0 0 0-88-88a8 8 0 0 1 0-16a104.11 104.11 0 0 1 104 104v76.69l34.34-34.35a8 8 0 0 1 11.32 11.32"/></symbol><use href="#ai:ph:arrow-bend-right-down"></use>  </svg> <span class="text-xs font-medium text-green-700 bg-green-100 border border-green-200 rounded-md px-2 py-1">
313Sync active
314</span> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-6 text-green-600 scale-y-[-1] rotate-45 self-end" data-icon="ph:arrow-bend-right-down">   <use href="#ai:ph:arrow-bend-right-down"></use>  </svg> </div> <div class="flex-1 bg-white rounded-2xl p-2"> <div class="flex items-center justify-between mb-5"> <span class="text-xs font-medium">Your events</span> <span class="text-1xs font-semibold text-green-600 bg-green-50 border border-green-200 rounded-full px-2">
315Valid
316</span> </div> <ul class="flex flex-col divide-y divide-green-100"> <li class="flex items-center gap-1 py-1"> <svg width="1em" height="1em" class="size-3 shrink-0" data-icon="meta">   <symbol id="ai:local:meta" viewBox="0 0 100 100"><g fill="none"><g clip-path="url(#a)"><path fill="#0081FB" d="M10.801 60.804c0 3.818.838 6.75 1.934 8.523 1.436 2.323 3.578 3.307 5.762 3.307 2.817 0 5.394-.7 10.36-7.567 3.978-5.505 8.666-13.232 11.82-18.076l5.341-8.207c3.71-5.7 8.005-12.036 12.93-16.33C62.968 18.947 67.304 17 71.668 17c7.327 0 14.307 4.247 19.648 12.21C97.162 37.932 100 48.917 100 60.254c0 6.74-1.328 11.691-3.589 15.604-2.184 3.783-6.44 7.564-13.6 7.564V72.634c6.13 0 7.66-5.633 7.66-12.08 0-9.188-2.142-19.385-6.86-26.67-3.35-5.168-7.69-8.325-12.464-8.325-5.164 0-9.32 3.894-13.99 10.84-2.483 3.689-5.032 8.185-7.894 13.259l-3.15 5.582c-6.33 11.221-7.933 13.777-11.098 17.996-5.547 7.386-10.283 10.186-16.518 10.186-7.397 0-12.074-3.203-14.97-8.03C1.16 71.459 0 66.298 0 60.418z"/><path fill="url(#b)" d="M8.516 29.972C13.47 22.339 20.615 17 28.811 17c4.748 0 9.466 1.406 14.394 5.429 5.39 4.399 11.135 11.643 18.302 23.581l2.57 4.284c6.204 10.336 9.734 15.653 11.8 18.16 2.656 3.22 4.517 4.18 6.934 4.18 6.13 0 7.66-5.633 7.66-12.08l9.529-.3c0 6.74-1.328 11.691-3.589 15.604-2.184 3.783-6.44 7.564-13.6 7.564-4.452 0-8.395-.967-12.756-5.081-3.352-3.158-7.272-8.767-10.287-13.81L50.8 49.551c-4.5-7.52-8.628-13.125-11.017-15.664-2.57-2.73-5.873-6.026-11.145-6.026-4.267 0-7.89 2.994-10.923 7.574z"/><path fill="url(#c)" d="M28.638 27.86c-4.267 0-7.891 2.995-10.923 7.575-4.288 6.472-6.914 16.111-6.914 25.369 0 3.818.838 6.75 1.934 8.523l-9.209 6.065C1.161 71.459 
3160 66.298 0 60.418c0-10.694 2.935-21.84 8.516-30.446C13.47 22.339 20.615 17 28.811 17z"/></g><defs><linearGradient id="b" x1="1278.13" x2="8155.45" y1="3732.2" y2="4079.55" gradientUnits="userSpaceOnUse"><stop stop-color="#0064E1"/><stop offset=".4" stop-color="#0064E1"/><stop offset=".83" stop-color="#0073EE"/><stop offset="1" stop-color="#0082FB"/></linearGradient><linearGradient id="c" x1="1564.89" x2="1564.89" y1="4850.76" y2="2312.19" gradientUnits="userSpaceOnUse"><stop stop-color="#0082FB"/><stop offset="1" stop-color="#0064E0"/></linearGradient><clipPath id="a"><path fill="#fff" d="M0 17h100v66.798H0z"/></clipPath></defs></g></symbol><use href="#ai:local:meta"></use>  </svg> <span class="text-1xs text-gray-800 font-medium flex-1">AddToCart</span> <svg width="1em" height="1em" class="size-5 text-green-400 shrink-0" data-icon="ph:check-circle-fill">   <symbol id="ai:ph:check-circle-fill" viewBox="0 0 256 256"><path fill="currentColor" d="M128 24a104 104 0 1 0 104 104A104.11 104.11 0 0 0 128 24m45.66 85.66l-56 56a8 8 0 0 1-11.32 0l-24-24a8 8 0 0 1 11.32-11.32L112 148.69l50.34-50.35a8 8 0 0 1 11.32 11.32"/></symbol><use href="#ai:ph:check-circle-fill"></use>  </svg> </li><li class="flex items-center gap-1 py-1"> <svg width="0.89em" height="1em" viewBox="0 0 293768 333327" class="size-3 shrink-0" data-icon="tiktok">   <use href="#ai:local:tiktok"></use>  </svg> <span class="text-1xs text-gray-800 font-medium flex-1">InitiateCheckout</span> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-5 text-green-400 shrink-0" data-icon="ph:check-circle-fill">   <use href="#ai:ph:check-circle-fill"></use>  </svg> </li><li class="flex items-center gap-1 py-1"> <svg width="1em" height="1em" class="size-3 shrink-0" data-icon="google">   <symbol id="ai:local:google" viewBox="-3 0 262 262"><path fill="#4285F4" d="M255.878 133.451c0-10.734-.871-18.567-2.756-26.69H130.55v48.448h71.947c-1.45 12.04-9.283 30.172-26.69 42.356l-.244 1.622 38.755 30.023 2.685.268c24.659-22.774 38.875-56.282 38.875-96.027"/><path fill="#34A853" d="M130.55 261.1c35.248 0 64.839-11.605 86.453-31.622l-41.196-31.913c-11.024 7.688-25.82 13.055-45.257 13.055-34.523 0-63.824-22.773-74.269-54.25l-1.531.13-40.298 31.187-.527 1.465C35.393 231.798 79.49 261.1 130.55 261.1"/><path fill="#FBBC05" d="M56.281 156.37c-2.756-8.123-4.351-16.827-4.351-25.82 0-8.994 1.595-17.697 4.206-25.82l-.073-1.73L15.26 71.312l-1.335.635C5.077 89.644 0 109.517 0 130.55s5.077 40.905 13.925 58.602z"/><path fill="#EB4335" d="M130.55 50.479c24.514 0 41.05 10.589 50.479 19.438l36.844-35.974C195.245 12.91 165.798 0 130.55 0 79.49 0 35.393 29.301 13.925 71.947l42.211 32.783c10.59-31.477 39.891-54.251 74.414-54.251"/></symbol><use href="#ai:local:google"></use>  </svg> <span class="text-1xs text-gray-800 font-medium flex-1">ViewContent</span> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-5 text-green-400 shrink-0" data-icon="ph:check-circle-fill">   <use href="#ai:ph:check-circle-fill"></use>  </svg> </li> </ul> </div> </div> </div> </div> </div><div class="flex flex-col gap-2 md:contents"> <button data-step="2" class="step-btn flex items-center gap-4 bg-white rounded-2xl px-5 py-4 border border-gray-200 text-left cursor-pointer md:col-start-1 [transition:translate_600ms_cubic-bezier(0.34,1.56,0.64,1),background_200ms_ease,border-color_200ms_ease,box-shadow_200ms_ease]" aria-selected="false"> <div class="step-icon w-10 h-10 bg-secondary-100 rounded-xl flex items-center justify-center shrink-0 transition-colors"> <svg width="1em" height="1em" class="step-icon-svg size-6 text-secondary-600 transition-colors" data-icon="ph:star">   <symbol id="ai:ph:star" viewBox="0 0 256 256"><path fill="currentColor" d="M239.18 97.26A16.38 16.38 0 0 0 224.92 86l-59-4.76l-22.78-55.09a16.36 16.36 0 0 0-30.27 0L90.11 81.23L31.08 86a16.46 16.46 0 0 0-9.37 28.86l45 38.83L53 211.75a16.38 16.38 0 0 0 24.5 17.82l50.5-31.08l50.53 31.08A16.4 16.4 0 0 0 203 211.75l-13.76-58.07l45-38.83a16.43 16.43 0 0 0 4.94-17.59m-15.34 5.47l-48.7 42a8 8 0 0 0-2.56 7.91l14.88 62.8a.37.37 0 0 1-.17.48c-.18.14-.23.11-.38 0l-54.72-33.65a8 8 0 0 0-8.38 0l-54.72 33.67c-.15.09-.19.12-.38 0a.37.37 0 0 1-.17-.48l14.88-62.8a8 8 0 0 0-2.56-7.91l-48.7-42c-.12-.1-.23-.19-.13
316-.5s.18-.27.33-.29l63.92-5.16a8 8 0 0 0 6.72-4.94l24.62-59.61c.08-.17.11-.25.35-.25s.27.08.35.25L153 91.86a8 8 0 0 0 6.75 4.92l63.92 5.16c.15 0 .24 0 .33.29s0 .4-.16.5"/></symbol><use href="#ai:ph:star"></use>  </svg> </div> <div> <div class="step-header flex items-center gap-2 origin-left [transition:scale_300ms_cubic-bezier(0.34,1.56,0.64,1)]"> <span class="text-sm text-black/30">03</span> <p class="font-syne font-bold text-black">Enrich</p> </div> <p class="step-desc text-xs text-gray-400 overflow-hidden transition-all duration-300 max-h-10 opacity-100 translate-y-0"> Give platforms the context to find your buyers. </p> </div> <span class="step-dot ml-auto w-2.5 h-2.5 rounded-full opacity-0 transition-opacity duration-200 shrink-0"></span> </button> <div data-panel="2" class="rounded-3xl p-8 flex-col justify-between transition-all duration-300 md:col-start-2 md:row-start-1 md:row-span-5 shadow-2xl shadow-blue-200 border border-blue-200 bg-blue-50 hidden"> <div> <div class="border-b-2 mb-8 flex justify-between border-blue-200"> <p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-orange-400 invisible"> Capture <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-orange-400"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-green-500 invisible"> Validate <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-green-500"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-blue-400"> Enrich <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-blue-400"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-purple-500 invisible"> Activate <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-purple-500"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-rose-500 invisible"> Learn <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-rose-500"></span> </p> </div> <h3 class="font-syne text-2xl font-bold text-gray-900 mb-3">Give platforms the context to find your buyers.</h3> <p class="text-sm text-gray-500 leading-relaxed mb-8">Every event is matched with hashed identifiers to maximize match rates across all connected ad platforms. Ad platforms can only learn from events they can connect to a real person. Match rate is the metric that proves it is working.</p> </div> <div class="w-full"> <div class="relative flex items-center justify-center w-full mask-[linear-gradient(to_right,transparent,black_5%,black_95%,transparent)]"> <div class="flex flex-col gap-1 absolute left-0 top-8 z-20 ml-4 opacity-80"> <span class="text-xs text-blue-900/30 font-medium">Data</span> <div class="flex items-center gap-2"> <div class="size-8 rounded-md bg-white/70 backdrop-blur-md border border-white flex items-center justify-center shrink-0"> <svg width="1em" height="1em" class="size-4 text-purple-400" data-icon="ph:phone">   <symbol id="ai:ph:phone" viewBox="0 0 256 256"><path fill="currentColor" d="m222.37 158.46l-47.11-21.11l-.13-.06a16 16 0 0 0-15.17 1.4a8 8 0 0 0-.75.56L134.87 160c-15.42-7.49-31.34-23.29-38.83-38.51l20.78-24.71c.2-.25.39-.5.57-.77a16 16 0 0 0 1.32-15.06v-.12L97.54 33.64a16 16 0 0 0-16.62-9.52A56.26 56.26 0 0 0 32 80c0 79.4 64.6 144 144 144a56.26 56.26 0 0 0 55.88-48.92a16 16 0 0 0-9.51-16.62M176 208A128.14 128.14 0 0 1 48 80a40.2 40.2 0 0 1 34.87-40a.6.6 0 0 0 0 .12l21 47l-20.67 24.74a6 6 0 0 0-.57.77a16 16 0 0 0-1 15.7c9.06 18.53 27.73 37.06 46.46 46.11a16 16 0 0 0 15.75-1.14a8 8 0 0 0 .74-.56L168.89 152l47 21.05h.11A40.21 40.21 0 0 1 176 208"/></symbol><use href="#ai:ph:phone"></use>  </svg> </div><div class="size-8 rounded-md bg-white/70 backdrop-blur-md border border-white flex items-center justify-center shrink-0"> <svg width="1em" height="1em" class="size-4 text-green-500" data-icon="ph:shopping-cart">   <symbol id="ai:ph:shopping-cart" viewBox="0 0 256 256"><path fill="currentColor" d="M230.14 58.87A8 8 0 0 0 224 56H62.68L56.6 22.57A8 8 0 0 0 48.73 16H24a8 8 0 0 0 0 16h18l25.56 140.29a24 24 0 0 0 5.33 11.27a28 28 0 1 0 44.4 8.44h45.42a27.75 27.75 0 0 0-2.71 12a28 28 0 1 0 28-28H91.17a8 8 0 0 1-7.87-6.57L80.13 152h116a24 24 0 0 0 23.61-19.71l12.16-66.86a8 8 0 0 0-1.76-6.56M104 204a12 12 0 1 1-12-12a12 12 0 0 1 12 12m96 0a12 12 0 1 1-12-12a12 12 0 0 1 12 12m4-74.57a8 8 0 0 1-7.9 6.57H77.22L65.59 72h148.82Z"/></symbol><use href="#ai:ph:shopping-cart"></use>  </svg> </div><div class="size-8 rounded-md bg-white/70 backdrop-blur-md border border-white flex items-center justify-center shrink-0"> <svg width="1em" height="1em" class="size-4 text-blue-400" data-icon="ph:monitor">   <symbol id="ai:ph:monitor" viewBox="0 0 256 256">
316<path fill="currentColor" d="M208 40H48a24 24 0 0 0-24 24v112a24 24 0 0 0 24 24h160a24 24 0 0 0 24-24V64a24 24 0 0 0-24-24m8 136a8 8 0 0 1-8 8H48a8 8 0 0 1-8-8V64a8 8 0 0 1 8-8h160a8 8 0 0 1 8 8Zm-48 48a8 8 0 0 1-8 8H96a8 8 0 0 1 0-16h64a8 8 0 0 1 8 8"/></symbol><use href="#ai:ph:monitor"></use>  </svg> </div><div class="size-8 rounded-md bg-white/70 backdrop-blur-md border border-white flex items-center justify-center shrink-0"> <svg width="1em" height="1em" class="size-4 text-orange-400" data-icon="ph:envelope">   <symbol id="ai:ph:envelope" viewBox="0 0 256 256"><path fill="currentColor" d="M224 48H32a8 8 0 0 0-8 8v136a16 16 0 0 0 16 16h176a16 16 0 0 0 16-16V56a8 8 0 0 0-8-8m-96 85.15L52.57 64h150.86ZM98.71 128L40 181.81V74.19Zm11.84 10.85l12 11.05a8 8 0 0 0 10.82 0l12-11.05l58 53.15H52.57ZM157.29 128L216 74.18v107.64Z"/></symbol><use href="#ai:ph:envelope"></use>  </svg> </div><div class="size-8 rounded-md bg-white/70 backdrop-blur-md border border-white flex items-center justify-center shrink-0"> <svg width="1em" height="1em" class="size-4 text-rose-400" data-icon="ph:device-mobile">   <symbol id="ai:ph:device-mobile" viewBox="0 0 256 256"><path fill="currentColor" d="M176 16H80a24 24 0 0 0-24 24v176a24 24 0 0 0 24 24h96a24 24 0 0 0 24-24V40a24 24 0 0 0-24-24M72 64h112v128H72Zm8-32h96a8 8 0 0 1 8 8v8H72v-8a8 8 0 0 1 8-8m96 192H80a8 8 0 0 1-8-8v-8h112v8a8 8 0 0 1-8 8"/></symbol><use href="#ai:ph:device-mobile"></use>  </svg> </div> </div> </div> <div class="relative mx-6 shrink-0 z-10"> <svg class="absolute top-0 -left-14 w-20 h-12 rotate-8" viewBox="0 0 80 48" fill="none"> <path d="M10 40 Q10 4 60 4" stroke="#60a5fa" stroke-width="1.5" fill="none" stroke-dasharray="none" marker-end="url(#arrow-blue)"></path> <defs> <marker id="arrow-blue" markerWidth="6" markerHeight="6" refX="5" refY="3" orient="auto"> <path d="M0,0 L6,3 L0,6 Z" fill="#60a5fa"></path> </marker> </defs> </svg> <svg class="absolute bottom-0 -right-12 w-20 h-12 rotate-8" viewBox="0 0 80 48" fill="none"> <path d="M20 44 Q70 44 70 4" stroke="#60a5fa" stroke-width="1.5" fill="none" marker-end="url(#arrow-blue-2)"></path> <defs> <marker id="arrow-blue-2" markerWidth="6" markerHeight="6" refX="5" refY="3" orient="auto"> <path d="M0,0 L6,3 L0,6 Z" fill="#60a5fa"></path> </marker> </defs> </svg> <div class="w-24 h-24 opacity-90"> <img src="/_astro/enrich_person.B38X8XFb_1fcuV4.webp" alt="Person" loading="lazy" decoding="async" fetchpriority="auto" width="777" height="777" class="w-full h-full object-cover rounded-full border-2 border-blue-400 shadow-lg shadow-blue-200"> </div> </div> <div class="flex flex-col items-end gap-1 absolute right-0 top-4 z-0 mr-4 opacity-80"> <div class="flex items-center gap-2"> <div class="size-8 rounded-md bg-blue-100 flex items-center justify-center shrink-0"> <svg width="1em" height="1em" viewBox="0 0 100 100" class="size-4" data-icon="meta">   <use href="#ai:local:meta"></use>  </svg> </div><div class="size-8 rounded-md bg-blue-100 flex items-center justify-center shrink-0"> <svg width="1em" height="1em" class="size-4" data-icon="snap">   <symbol id="ai:local:snap" viewBox="0 0 512 512"><path fill="#fff" d="M496.27 378.17c-2.1-6.96-12.17-11.86-12.17-11.86h.01c-.93-.52-1.79-.96-2.51-1.3-16.75-8.11-31.58-17.83-44.09-28.9-10.05-8.88-18.65-18.68-25.57-29.1-8.43-12.71-12.38-23.32-14.1-29.07-.94-3.74-.79-5.23 0-7.18.67-1.63 2.58-3.22 3.52-3.93 5.67-4 14.77-9.9 20.36-13.52 4.84-3.13 9.01-5.84 11.44-7.53 7.87-5.5 13.24-11.1 16.42-17.13 4.12-7.81 4.6-16.41 1.4-24.87-4.32-11.41-14.97-18.22-28.49-18.22-3.02 0-6.1.34-9.18 1.01-7.74 1.68-15.1 4.43-21.26 6.83a.666.666 0 0 1-.91-.65c.66-15.25 1.38-35.73-.31-55.22-1.52-17.61-5.14-32.45-11.07-45.38-5.96-12.99-13.68-22.62-19.74-29.55-5.79-6.62-15.91-16.35-31.2-25.1-21.53-12.32-46.03-18.56-72.82-18.56-26.72 0-51.2 6.24-72.76 18.56-16.18 9.24-26.53 19.7-31.25 25.1-6.06 6.93-13.79 16.56-19.75 29.55-5.93 12.93-9.55 27.77-11.07 45.38-1.69 19.53-1.01 38.39-.31 55.21.02.49-.46.84-.92.66-6.15-2.4-13.52-5.15-21.25-6.83-3.07-.67-6.16-1.01-9.18-1.01-13.52 0-24.17 6.81-28.49 18.22-3.2 8.46-2.71 17.06 1.4 24.87 3.18 6.03 8.56 11.63 16.42 17.13 2.43 1.69 6.61 4.4 11.44 7.53 5.48 3.5
3165 14.32 9.28 20.01 13.27.7.5 3.09 2.31 3.86 4.18.81 2 .95 3.51-.08 7.48-1.76 5.81-5.72 16.28-14 28.77-6.92 10.42-15.53 20.22-25.58 29.1-12.51 11.07-27.34 20.79-44.09 28.9-.78.38-1.73.86-2.76 1.45v-.01s-9.99 5.12-11.88 11.72c-2.79 9.75 4.63 18.88 12.23 23.78 12.4 8 27.5 12.3 36.26 14.63 2.44.65 4.65 1.24 6.66 1.87 1.26.42 4.41 1.61 5.76 3.34 1.7 2.18 1.9 4.9 2.51 7.94.98 5.13 3.11 11.51 9.46 15.89 6.98 4.83 15.85 5.17 27.08 5.6 11.75.45 26.37 1.01 43.1 6.53 7.75 2.56 14.78 6.88 22.91 11.88 16.99 10.44 38.14 23.43 74.27 23.43 36.15 0 57.44-13.06 74.55-23.56 8.08-4.96 15.06-9.25 22.64-11.75 16.73-5.53 31.35-6.08 43.1-6.53 11.22-.43 20.09-.77 27.08-5.6 6.79-4.69 8.76-11.68 9.64-16.97.48-2.6.81-4.94 2.31-6.86 1.27-1.64 4.18-2.8 5.56-3.27 2.06-.65 4.35-1.27 6.88-1.94 8.76-2.33 19.73-5.11 33.1-12.66 15.98-9.03 17.07-20.24 15.41-25.75"/><path fill="currentColor" d="M474.29 391.99c-21.88 12.07-36.44 10.79-47.75 18.07-9.61 6.18-3.93 19.53-10.91 24.35-8.57 5.93-33.95-.43-66.7 10.4-27.02 8.93-44.27 34.62-92.91 34.62-48.75 0-65.49-25.57-92.91-34.62-32.76-10.82-58.13-4.47-66.71-10.4-6.97-4.82-1.29-18.17-10.9-24.35-11.31-7.28-25.87-6-47.75-18.07-13.94-7.7-6.04-12.46-1.39-14.71 79.28-38.38 91.92-97.64 92.49-102.1.68-5.33 1.44-9.51-4.42-14.93-5.67-5.24-30.8-20.79-37.76-25.65-11.54-8.05-16.62-16.11-12.88-26 2.59-6.83 8.99-9.41 15.74-9.41 2.1 0 4.23.25 6.28.7 12.67 2.75 24.97 9.09 32.08 10.81.97.24 1.84.35 2.61.35 3.78 0 5.12-1.91 4.87-6.25-.81-13.85-2.78-40.86-.6-66.09 3-34.71 14.19-51.92 27.5-67.13 6.39-7.31 36.38-39.01 93.75-39.01 57.52 0 87.36 31.7 93.75 39.01 13.31 15.21 24.5 32.42 27.5 67.13 2.18 25.23.3 52.25-.6 66.09-.29 4.56 1.08 6.25 4.87 6.25.77 0 1.64-.11 2.61-.35 7.11-1.72 19.41-8.06 32.08-10.81 2.05-.45 4.18-.7 6.28-.7 6.74 0 13.15 2.58 15.74 9.41 3.74 9.89-1.34 17.95-12.88 26-6.97 4.86-32.09 20.41-37.76 25.65-5.86 5.42-5.1 9.6-4.42 14.93.57 4.46 13.21 63.72 92.49 102.1 4.65 2.25 12.55 7.01-1.39 14.71M268.94 4.4h-25.83c-24.4 1.74-46.98 8.47-67.29 20.08-17.18 9.81-28.57 20.78-35.11 28.25-15.7 17.97-30.75 40.52-34.46 83.51-1.06 12.22-1.32 24.73-1.14 36.43-1.06-.27-2.13-.52-3.22-.76-4.11-.89-8.27-1.35-12.36-1.35-19.71 0-36 10.7-42.51 27.91-4.7 12.42-3.93 25.62 2.15 37.17 4.33 8.2 11.23 15.54 21.11 22.43 2.63 1.84 6.71 4.48 11.86 7.83 2.79 1.8 6.86 4.44 10.86 7.08.6.42 2.76 1.99 3.48 3.49.82 1.71.85 3.57-.38 6.97-2.12 4.67-5.14 10.36-9.44 16.65-12.74 18.64-30.97 34.44-54.26 47.05-12.34 6.57-25.16 10.91-30.57 25.62C.61 376.06 0 379.49 0 382.97c.01 8.23 3.5 16.7 10.79 24.19l.01-.02c3.41 3.67 7.7 6.92 13.11 9.91 12.71 7.01 23.51 10.45 32.01 12.81 1.49.44 4.95 1.56 6.46 2.89 3.78 3.3 3.24 8.29 8.29 15.58 3.04 4.54 6.57 7.63 9.46 9.63 10.57 7.31 22.45 7.76 35.03 8.24 11.37.44 24.26.93 38.97 5.79 6.1 2.02 12.43 5.91 19.77 10.42 15.79 9.7 36.82 22.62 70.09 25.19h24.03c33.32-2.58 54.49-15.56 70.39-25.32 7.28-4.47 13.58-8.33 19.5-10.29 14.72-4.86 27.6-5.36 38.97-5.79 12.58-.48 24.45-.93 35.03-8.24 3.32-2.3 7.48-6.03 10.78-11.75 3.62-6.15 3.53-10.49 6.93-13.46 1.39-1.22 4.43-2.27 6.07-2.77 8.57-2.36 19.52-5.8 32.44-12.93 5.73-3.17 10.22-6.62 13.73-10.56l.13-.16c9.72-10.47 12.17-22.74 8.18-33.57-3.56-9.68-10.33-14.86-18.05-19.15a60 60 0 0 0-3.87-2.05c-2.31-1.18-4.66-2.34-7-3.56-24.06-12.75-42.84-28.84-55.88-47.91-4.39-6.44-7.46-12.25-9.58-16.98-1.11-3.19-1.06-4.99-.27-6.64.61-1.26 2.22-2.56 3.08-3.2 4.13-2.73 8.41-5.51 11.29-7.37 5.16-3.35 9.23-5.99 11.87-7.83 9.88-6.89 16.78-14.23 21.1-22.43 6.09-11.55 6.86-24.75 2.16-37.17-6.51-17.21-22.8-27.91-42.51-27.91-4.09 0-8.24.46-12.36 1.35-1.09.24-2.16.49-3.22.76.17-11.7-.08-24.21-1.14-36.43-3.71-42.99-18.76-65.54-34.47-83.51-6.54-7.49-17.94-18.47-35.04-28.25-20.29-11.6-42.89-18.34-67.34-20.08"/></symbol><use href="#ai:local:snap"></use>  </svg> </div><div class="size-8 rounded-md bg-blue-100 flex items-center justify-center shrink-0"> <svg width="1em" height="1em" class="size-4" data-icon="pinterest">   <symbol id="ai:local:pinterest" viewBox="0 0 144 144"><path fill="#BD081C" d="M71.9 5.4C35.1 5.4 5.3 35.2 5.3 72c0 28.2 17.5 52.3 42.3 62-.6-5.3-1.1-13.3.2-19.1 1.2-5.2 7.8-33.1 7.8-33.1s-2-4-2-9.9c0-9.3 5.4-16.2 12-16.2 5.7 0 8.4 4.3 8.4 9.4 0 5.7-3.6 14.3-5.5 22.2-1.6 6.6 3.3 12 9.9 12 11.8 0 20.9-12.5 20.9-30.5 0-15.9-11.5-27.1-27.8-27.1-18.9 0-30.1 14.2-30.1 28.9 0 5.7 2.2 11.9 5 15.2.5.7.6 1.2.5 1.9-.5 2.1-1.6 6.6-1.8 7.5-.3 1.2-1 1.5-2.2.9-8.3-3.9-13.5-16-13.5-25.8 0-21 15.3-40.3 44-40.3 23.1 0 41 16.5 41 38.4 0 22.9-14.5 41.4-34.5 41.4-6.7 0-13.1-3.5-15.3-7.6 0 0-3.3 12.7-4.1 15.8-1.5 5.8-5.6 13-8.3 17.5 6.2 1.9 12.8 3 19.7 3 36.8 0 66.6-29.8 66.6-66.6 0-36.7-29.8-66.5-66.6-66.5"/></symbol><use href="#ai:local:pinterest"></use>  </svg> </div><div class="size-8 rounded-md bg-blue-100 flex items-center justify-center shrink-0"> <svg width="0.89em" height="1em" viewBox="0 0 293768 333327" class="size-4" data-icon="tiktok">   <use href="#ai:local:tiktok"></use>  </svg> </div><div class="size-8 rounded-md bg-blue-100 flex items-center justify-center shrink-0"> <svg width="1em" height="1em" class="size-4" data-icon="x">   <symbol id="ai:local:x" viewBox="0 0 50 50">
316<path fill="currentColor" d="m5.92 6 14.662 21.375L6.23 44h3.18l12.576-14.578 10 14.578H44L28.682 21.67 42.199 6h-3.17L27.275 19.617 17.934 6zm3.797 2h7.164l23.322 34H33.04z"/></symbol><use href="#ai:local:x"></use>  </svg> </div> </div> <span class="text-xs text-blue-900/30 font-medium">Ad Platforms</span> </div> </div> </div> </div> </div><div class="flex flex-col gap-2 md:contents"> <button data-step="3" class="step-btn flex items-center gap-4 bg-white rounded-2xl px-5 py-4 border border-gray-200 text-left cursor-pointer md:col-start-1 [transition:translate_600ms_cubic-bezier(0.34,1.56,0.64,1),background_200ms_ease,border-color_200ms_ease,box-shadow_200ms_ease]" aria-selected="false"> <div class="step-icon w-10 h-10 bg-secondary-100 rounded-xl flex items-center justify-center shrink-0 transition-colors"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="step-icon-svg size-6 text-secondary-600 transition-colors" data-icon="ph:arrow-right">   <use href="#ai:ph:arrow-right"></use>  </svg> </div> <div> <div class="step-header flex items-center gap-2 origin-left [transition:scale_300ms_cubic-bezier(0.34,1.56,0.64,1)]"> <span class="text-sm text-black/30">04</span> <p class="font-syne font-bold text-black">Activate</p> </div> <p class="step-desc text-xs text-gray-400 overflow-hidden transition-all duration-300 max-h-10 opacity-100 translate-y-0"> Streamed into every platform. In real time. </p> </div> <span class="step-dot ml-auto w-2.5 h-2.5 rounded-full opacity-0 transition-opacity duration-200 shrink-0"></span> </button> <div data-panel="3" class="rounded-3xl p-8 flex-col justify-between transition-all duration-300 md:col-start-2 md:row-start-1 md:row-span-5 shadow-2xl shadow-purple-200 border border-purple-200 bg-purple-50 hidden"> <div> <div class="border-b-2 mb-8 flex justify-between border-purple-200"> <p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-orange-400 invisible"> Capture <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-orange-400"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-green-500 invisible"> Validate <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-green-500"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-blue-400 invisible"> Enrich <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-blue-400"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-purple-500"> Activate <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-purple-500"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-rose-500 invisible"> Learn <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-rose-500"></span> </p> </div> <h3 class="font-syne text-2xl font-bold text-gray-900 mb-3">Streamed into every platform. In real time.</h3> <p class="text-sm text-gray-500 leading-relaxed mb-8">Signals are sent via official Conversion APIs to Meta, TikTok, Snap, Google, and Amazon simultaneously, in platform-native format, in real time. Every platform gets what it needs in the format it expects. No delays. No workarounds.</p> </div> <div class="w-full"> <div class="w-full mask-[linear-gradient(to_right,transparent,black_55%,black_65%,transparent)]"> <div class="grid grid-cols-[repeat(5,auto)] gap-2 w-fit mx-auto [&>*:nth-child(6)]:col-start-2"> <div class="bg-purple-100 opacity-70 size-14 rounded-xl flex items-center justify-center aspect-square"> <svg width="1em" height="1em" class="size-10 object-contain rounded aspect-square" data-icon="linkedin">   <symbol id="ai:local:linkedin" viewBox="0 0 382 382"><path fill="#0077B7" d="M347.445 0H34.555C15.471 0 0 15.471 0 34.555v312.889C0 366.529 15.471 382 34.555 382h312.889C366.529 382 382 366.529 382 347.444V34.555C382 15.471 366.529 0 347.445 0M118.207 329.844c0 5.554-4.502 10.056-10.056 10.056H65.345c-5.554 0-10.056-4.502-10.056-10.056V150.403c0-5.554 4.502-10.056 10.056-10.056h42.806c5.554 0 10.056 4.502 10.056 10.056zM86.748 123.432c-22.459 0-40.666-18.207-40.666-40.666S64.289 42.1 86.748 42.1s40.666 18.207 40.666 40.666-18.206 40.666-40.666 40.666M341.91 330.654a9.247 9.247 0 0 1-9.246 9.246H286.73a9.247 9.247 0 0 1-9.246-9.246v-84.168c0-12.556 3.683-55.021-32.813-55.021-28.309 0-34.051 29.066-35.204 42.11v97.079a9.246 9.246 0 0 1-9.246 9.246h-44.426a9.247 9.247 0 0 1-9.246-9.246V149.593a9.247 9.247 0 0 1 9.246-9.246h44.426a9.247 9.247 0 0 1 9.246 9.246v15.655c10.497-15.753 26.097-27.912 59.3
31612-27.912 73.552 0 73.131 68.716 73.131 106.472z"/></symbol><use href="#ai:local:linkedin"></use>  </svg> </div><div class="bg-purple-100 opacity-70 size-14 rounded-xl flex items-center justify-center aspect-square"> <svg width="0.89em" height="1em" viewBox="0 0 293768 333327" class="size-10 object-contain rounded aspect-square" data-icon="tiktok">   <use href="#ai:local:tiktok"></use>  </svg> </div><div class="bg-purple-100 opacity-70 size-14 rounded-xl flex items-center justify-center aspect-square"> <svg width="1em" height="1em" viewBox="0 0 144 144" class="size-10 object-contain rounded aspect-square" data-icon="pinterest">   <use href="#ai:local:pinterest"></use>  </svg> </div><div class="bg-purple-100 opacity-70 size-14 rounded-xl flex items-center justify-center aspect-square"> <svg width="1em" height="1em" viewBox="0 0 512 512" class="size-10 object-contain rounded aspect-square" data-icon="snap">   <use href="#ai:local:snap"></use>  </svg> </div><div class="bg-purple-100 opacity-70 size-14 rounded-xl flex items-center justify-center aspect-square"> <svg width="1em" height="1em" viewBox="0 0 100 100" class="size-10 object-contain rounded aspect-square" data-icon="meta">   <use href="#ai:local:meta"></use>  </svg> </div><div class="bg-purple-100 opacity-70 size-14 rounded-xl flex items-center justify-center aspect-square"> <svg width="1em" height="1em" viewBox="0 0 50 50" class="size-10 object-contain rounded aspect-square" data-icon="x">   <use href="#ai:local:x"></use>  </svg> </div><div class="bg-purple-100 opacity-70 size-14 rounded-xl flex items-center justify-center aspect-square"> <svg width="1em" height="1em" class="size-10 object-contain rounded aspect-square" data-icon="google_ads">   <symbol id="ai:local:google_ads" viewBox="0 -13 256 256"><path fill="#FBBC04" d="M5.888 166.405 90.88 20.9c10.796 6.356 65.236 36.484 74.028 42.214L79.916 208.627c-9.295 12.28-85.804-23.587-74.028-42.23z"/><path fill="#4285F4" d="M250.084 166.402 165.092 20.906C153.21 1.132 127.62-6.054 106.
316601 5.625S79.182 42.462 91.064 63.119l84.992 145.514c11.882 19.765 37.473 26.95 58.492 15.272 20.1-11.68 27.418-37.73 15.536-57.486z"/><ellipse cx="42.664" cy="187.924" fill="#34A853" rx="42.664" ry="41.604"/></symbol><use href="#ai:local:google_ads"></use>  </svg> </div><div class="bg-purple-100 opacity-70 size-14 rounded-xl flex items-center justify-center aspect-square"> <svg width="1em" height="1em" class="size-10 object-contain rounded aspect-square" data-icon="slack">   <symbol id="ai:local:slack" viewBox="0 0 16 16"><g fill="none" fill-rule="evenodd" clip-rule="evenodd"><path fill="#E01E5A" d="M2.471 11.318a1.474 1.474 0 0 0 1.47-1.471v-1.47h-1.47A1.474 1.474 0 0 0 1 9.846a1.47 1.47 0 0 0 1.47 1.47zm3.682-2.942a1.474 1.474 0 0 0-1.47 1.471v3.683c.002.811.66 1.468 1.47 1.47a1.474 1.474 0 0 0 1.47-1.47V9.846a1.474 1.474 0 0 0-1.47-1.47"/><path fill="#36C5F0" d="M4.683 2.471a1.47 1.47 0 0 0 1.47 1.47h1.47v-1.47A1.474 1.474 0 0 0 6.154 1a1.474 1.474 0 0 0-1.47 1.47zm2.94 3.682a1.474 1.474 0 0 0-1.47-1.47H2.47A1.474 1.474 0 0 0 1 6.153c.002.812.66 1.469 1.47 1.47h3.684a1.474 1.474 0 0 0 1.47-1.47z"/><path fill="#2EB67D" d="M9.847 7.624a1.474 1.474 0 0 0 1.47-1.47V2.47A1.474 1.474 0 0 0 9.848 1a1.474 1.474 0 0 0-1.47 1.47v3.684c.002.81.659 1.468 1.47 1.47zm3.682-2.941a1.474 1.474 0 0 0-1.47 1.47v1.47h1.47A1.474 1.474 0 0 0 15 6.154a1.474 1.474 0 0 0-1.47-1.47z"/><path fill="#ECB22E" d="M8.377 9.847a1.473 1.473 0 0 0 1.47 1.47h3.683A1.474 1.474 0 0 0 15 9.848a1.474 1.474 0 0 0-1.47-1.47H9.847a1.474 1.474 0 0 0-1.47 1.47zm2.94 3.682a1.474 1.474 0 0 0-1.47-1.47h-1.47v1.47a1.47 1.47 0 0 0 1.47 1.47 1.474 1.474 0 0 0 1.47-1.47"/></g></symbol><use href="#ai:local:slack"></use>  </svg> </div> </div> </div> </div> </div> </div><div class="flex flex-col gap-2 md:contents"> <button data-step="4" class="step-btn flex items-center gap-4 bg-white rounded-2xl px-5 py-4 border border-gray-200 text-left cursor-pointer md:col-start-1 [transition:translate_600ms_cubic-bezier(0.34,1.56,0.64,1),background_200ms_ease,border-color_200ms_ease,box-shadow_200ms_ease]" aria-selected="false"> <div class="step-icon w-10 h-10 bg-secondary-100 rounded-xl flex items-center justify-center shrink-0 transition-colors"> <svg width="1em" height="1em" class="step-icon-svg size-6 text-secondary-600 transition-colors" data-icon="ph:steps">   <symbol id="ai:ph:steps" viewBox="0 0 256 256"><path fill="currentColor" d="M248 56a8 8 0 0 1-8 8h-48v40a8 8 0 0 1-8 8h-48v40a8 8 0 0 1-8 8H80v40a8 8 0 0 1-8 8H16a8 8 0 0 1 0-16h48v-40a8 8 0 0 1 8-8h48v-40a8 8 0 0 1 8-8h48V56a8 8 0 0 1 8-8h56a8 8 0 0 1 8 8"/></symbol><use href="#ai:ph:steps"></use>  </svg> </div> <div> <div class="step-header flex items-center gap-2 origin-left [transition:scale_300ms_cubic-bezier(0.34,1.56,0.64,1)]"> <span class="text-sm text-black/30">05</span> <p class="font-syne font-bold text-black">Learn</p> </div> <p class="step-desc text-xs text-gray-400 overflow-hidden transition-all duration-300 max-h-10 opacity-100 translate-y-0"> Signal quality improves over time. </p> </div> <span class="step-dot ml-auto w-2.5 h-2.5 rounded-full opacity-0 transition-opacity duration-200 shrink-0"></span> </button> <div data-panel="4" class="rounded-3xl p-8 flex-col justify-between transition-all duration-300 md:col-start-2 md:row-start-1 md:row-span-5 shadow-2xl shadow-rose-200 border border-rose-200 bg-rose-50 hidden"> <div> <div class="border-b-2 mb-8 flex justify-between border-rose-200"> <p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-orange-400 invisible"> Capture <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-orange-400"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-green-500 invisible"> Validate <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-green-500"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-blue-400 invisible"> Enrich <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-blue-400"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-purple-500 invisible"> Activate <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-purple-500"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-rose-500"> Learn <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-rose-500"></span> </p> </div> <h3 class="font-syne text-2xl font-bold text-gray-900 mb-3">Signal quality improves over time.</h3> <p class="text-sm text-gray-500 leading-relaxed mb-8">Journify continuously monitors signal quality based on match rate performance, anomaly detection, and platform feedback. Signal quality degrades silently without active management. Learn closes the loop so the data ad platforms receive gets better, not just bigger.</p> </div> <div class="w-full"> <div class="flex gap-2 flex-wrap w-full mask-[linear-gradient(to_right,transparent,black_15%,black_65%,transparent)]"> <div> <div class="opacity-70 bg-white rounded-md px-2 py-1 flex flex-row gap-1 items-center"> <svg width="0.89em" height="1em" viewBox="0 0 293768 333327" class="size-3" data-icon="tiktok">   <use href="#ai:local:tiktok"></use>  </svg> <span class="font-semibold text-xs text-gray-900 whitespace-nowrap">TikTok API</span> <span class="ml-auto text-2xs text-black/50 whitespace-nowrap">97% Match</span> </div> <div class="mt-1 h-1 rounded-full bg-gray-100 overflow-hidden"> <div class="h-full rounded-full bg-green-400" style="width: 97%"></div> </div> </div><div> <div class="opacity-70 bg-white rounded-md px-2 py-1 flex flex-row gap-1 items-center"> <svg width="1em" height="1em" viewBox="0 0 512 512" class="size-3" data-icon="snap">   <use href="#ai:local:snap"></use>  </svg> <span class="font-semibold text-xs text-gray-900 whitespace-nowrap">Snap</span> <span class="ml-auto text-2xs text-black/50 whitespace-nowrap">98% Match</span> </div> <div class="mt-1 h-1 rounded-full bg-gray-100 overflow-hidden"> <div class="h-full rounded-full bg-green-400" style="width: 98%"></div> </div> </div><div> <div class="opacity-70 bg-white rounded-md px-2 py-1 flex flex-row gap-1 items-center"> <svg width="1em" height="1em" viewBox="0 0 50 50" class="size-3" data-icon="x">   <use href="#ai:local:x"></use>  </svg> <span class="font-semibold text-xs text-gray-900 whitespace-nowrap">X.com</span> <span class="ml-auto text-2xs text-black/50 whitespace-nowrap">93% Match</span> </div> <div class="mt-1 h-1 rounded-full bg-gray-100 overflow-hidden"> <div class="h-full rounded-full bg-green-400" style="width: 93%"></div> </div> </div><div> <div class="opacity-70 bg-white rounded-md px-2 py-1 flex flex-row gap-1 items-center"> <svg width="1em" height="1em" viewBox="-3 0 262 262" class="size-3" data-icon="google">   <use href="#ai:local:google"></use>  </svg> <span class="font-semibold text-xs text-gray-900 whitespace-nowrap">Google</span> <span class="ml-auto text-2xs text-black/50 whitespace-nowrap">96% Match</span> </div> <div class="mt-1 h-1 rounded-full bg-gray-100 overflow-hidden"> <div class="h-full rounded-full bg-green-400" style="width: 96%"></div> </div> </div><div> <div class="opacity-70 bg-white rounded-md px-2 py-1 flex flex-row gap-1 items-center"> <svg width="1em" height="1em" viewBox="0 0 100 100" class="size-3" data-icon="meta">   <use href="#ai:local:meta"></use>  </svg> <span class="font-semibold text-xs text-gray-900 whitespace-nowrap">Meta API</span> <span class="ml-auto text-2xs text-black/50 whitespace-nowrap">98% Match</span> </div> <div class="mt-1 h-1 rounded-full bg-gray-100 overflow-hidden"> <div class="h-full rounded-full bg-green-400" style="width: 98%"></div> </div> </div> </div> </div> </div> </div> </div> <div data-orientation="horizontal" class="hidden md:grid grid-cols-1 gap-10"> <div class="flex gap-3 grid-cols-5"> <button data-step="0" class="step-btn flex items-center gap-4 bg-white rounded-2xl px-5 py-4 border border-gray-200 text-left cursor-pointer [transition:translate_600ms_cubic-bezier(0.34,1.56,0.64,1),background_200ms_ease,border-color_200ms_ease,box-shadow_200ms_ease]" aria-selected="true"> <div class="step-icon w-10 h-10 bg-secondary-100 rounded-xl flex items-center justify-center shrink-0 transition-colors"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="step-icon-svg size-6 text-secondary-600 transition-colors" data-icon="ph:crosshair-fill">   <use href="#ai:ph:crosshair-fill"></use>  </svg> </div> <div> <div class="step-header flex items-center gap-2 origin-left [transition:scale_300ms_cubic-bezier(0.34,1.56,0.64,1)]"> <span class="text-sm text-black/30">01</span> <p class="font-syne font-bold text-black">Capture</p> </div> </div> <span class="step-dot ml-auto w-2.5 h-2.5 rounded-full opacity-0 transition-opacity duration-200 shrink-0"></span> </button><button data-step="1" class="step-btn flex items-center gap-4 bg-white rounded-2xl px-5 py-4 border border-gray-200 text-left cursor-pointer [transition:translate_600ms_cubic-bezier(0.34,1.56,0.64,1),background_200ms_ease,border-color_200ms_ease,box-shadow_200ms_ease]" aria-selected="false"> <div class="step-icon w-10 h-10 bg-secondary-100 rounded-xl flex items-center justify-center shrink-0 transition-colors"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="step-icon-svg size-6 text-secondary-600 transition-colors" data-icon="ph:seal-check">   <use href="#ai:ph:seal-check"></use>  </svg> </div> <div> <div class="step-header flex items-center gap-2 origin-left [transition:scale_300ms_cubic-bezier(0.34,1.56,0.64,1)]"> <span class="text-sm text-black/30">02</span> <p class="font-syne font-bold text-black">Validate</p> </div> </div> <span class="step-dot ml-auto w-2.5 h-2.5 rounded-full opacity-0 transition-opacity duration-200 shrink-0"></span> </button><button data-step="2" class="step-btn flex items-center gap-4 bg-white rounded-2xl px-5 py-4 border border-gray-200 text-left cursor-pointer [transition:translate_600ms_cubic-bezier(0.34,1.56,0.64,1),background_200ms_ease,border-color_200ms_ease,box-shadow_200ms_ease]" aria-selected="false"> <div class="step-icon w-10 h-10 bg-secondary-100 rounded-xl flex items-center justify-center shrink-0 transition-colors"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="step-icon-svg size-6 text-secondary-600 transition-colors" data-icon="ph:star">   <use href="#ai:ph:star"></use>  </svg> </div> <div> <div class="step-header flex items-center gap-2 origin-left [transition:scale_300ms_cubic-bezier(0.34,1.56,0.64,1)]"> <span class="text-sm text-black/30">03</span> <p class="font-syne font-bold text-black">Enrich</p> </div> </div> <span class="step-dot ml-auto w-2.5 h-2.5 rounded-full opacity-0 transition-opacity duration-200 shrink-0"></span> </button><button data-step="3" class="step-btn flex items-center gap-4 bg-white rounded-2xl px-5 py-4 border border-gray-200 text-left cursor-pointer [transition:translate_600ms_cubic-bezier(0.34,1.56,0.64,1),background_200ms_ease,border-color_200ms_ease,box-shadow_200ms_ease]" aria-selected="false"> <div class="step-icon w-10 h-10 bg-secondary-100 rounded-xl flex items-center justify-center shrink-0 transition-colors"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="step-icon-svg size-6 text-secondary-600 transition-colors" data-icon="ph:arrow-right">   <use href="#ai:ph:arrow-right"></use>  </svg> </div> <div> <div class="step-header flex items-center gap-2 origin-left [transition:scale_300ms_cubic-bezier(0.34,1.56,0.64,1)]"> <span class="text-sm text-black/30">04</span> <p class="font-syne font-bold text-black">Activate</p> </div> </div> <span class="step-dot ml-auto w-2.5 h-2.5 rounded-full opacity-0 transition-opacity duration-200 shrink-0"></span> </button><button data-step="4" class="step-btn flex items-center gap-4 bg-white rounded-2xl px-5 py-4 border border-gray-200 text-left cursor-pointer [transition:translate_600ms_cubic-bezier(0.34,1.56,0.64,1),background_200ms_ease,border-color_200ms_ease,box-shadow_200ms_ease]" aria-selected="false"> <div class="step-icon w-10 h-10 bg-secondary-100 rounded-xl flex items-center justify-center shrink-0 transition-colors"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="step-icon-svg size-6 text-secondary-600 transition-colors" data-icon="ph:steps">   <use href="#ai:ph:steps"></use>  </svg> </div> <div> <div class="step-header flex items-center gap-2 origin-left [transition:scale_300ms_cubic-bezier(0.34,1.56,0.64,1)]"> <span class="text-sm text-black/30">05</span> <p class="font-syne font-bold text-black">Learn</p> </div> </div> <span class="step-dot ml-auto w-2.5 h-2.5 rounded-full opacity-0 transition-opacity duration-200 shrink-0"></span> </button> </div> <div data-panel="0" class="rounded-3xl p-8 h-full justify-between transition-all duration-300 flex flex-col gap-6 shadow-2xl shadow-orange-200 border border-orange-200 bg-orange-50"> <div> <div class="border-b-2 mb-6 flex justify-between border-orange-200"> <p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-orange-400"> Capture <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-orange-400"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-green-500 invisible"> Validate <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-green-500"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-blue-400 invisible"> Enrich <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-blue-400"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-purple-500 invisible"> Activate <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-purple-500"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-rose-500 invisible"> Learn <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-rose-500"></span> </p> </div> <div class="grid grid-cols-1 gap-6 md:grid-cols-2"> <div> <h3 class="font-syne text-2xl font-bold text-gray-900 mb-3">Every conversion, every source.</h3> <p class="text-sm text-gray-500 leading-relaxed">Web, mobile, CRM, payments, offline. Journify captures real-world conversion data before browser restrictions and iOS limitations strip it out. Nothing is left on the table.</p> <a href="/integrations/" class="font-syne cursor-pointer inline-flex items-center gap-2 text-center justify-center rounded-lg font-semibold transition-colors bg-transparent border text-sm px-4 py-2 mt-6 text-orange-400 border-orange-400 hover:bg-transparent hover:opacity-70">See supported integrations <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-4" data-icon="ph:arrow-right">   <use href="#ai:ph:arrow-right"></use>  </svg></a> </div> <div class="w-full mt-12"> <div class="w-full mask-[linear-gradient(to_right,transparent,black_15%,black_85%,transparent)]"> <div class="grid grid-cols-7 gap-2"> <div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="0.89em" height="1em" viewBox="0 0 293768 333327" class="size-8 object-contain rounded" data-icon="tiktok">   <use href="#ai:local:tiktok"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-8 object-contain rounded" data-icon="javascript">   <use href="#ai:local:javascript"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1em" height="1em" viewBox="-1.5 0 20 20" class="size-8 object-contain rounded" data-icon="ios">   <use href="#ai:local:ios"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1em" height="1em" viewBox="0 0 64 64" class="size-8 object-contain rounded" data-icon="bigquery">   <use href="#ai:local:bigquery"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1.19em" height="1em" viewBox="0 0 208 175" class="size-8 object-contain rounded" data-icon="salla">   <use href="#ai:local:salla"></use>  </svg> </div><div class="bg
316-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1em" height="1em" viewBox="-4.5 0 54 54" class="size-8 object-contain rounded" data-icon="magento">   <use href="#ai:local:magento"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1em" height="1em" viewBox="0 0 215.95 215.95" class="size-8 object-contain rounded" data-icon="zid">   <use href="#ai:local:zid"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1.01em" height="1em" viewBox="0 0 1565 1559" class="size-8 object-contain rounded" data-icon="snowflake">   <use href="#ai:local:snowflake"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-8 object-contain rounded" data-icon="gtm">   <use href="#ai:local:gtm"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1.43em" height="1em" viewBox="0.5 0.5 999 699.242" class="size-8 object-contain rounded" data-icon="salesforce">   <use href="#ai:local:salesforce"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1.15em" height="1em" viewBox="0 -1.062 402.103 352.074" class="size-8 object-contain rounded" data-icon="android">   <use href="#ai:local:android"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1em" height="1em" viewBox="-4 0 64 64" class="size-8 object-contain rounded" data-icon="sheet">   <use href="#ai:local:sheet"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="0.74em" height="1em" viewBox="0 0 256 346" class="size-8 object-contain rounded" data-icon="java">   <use href="#ai:local:java"></use>  </svg> </div><div class="bg-white opacity-70 rounded-xl p-2 flex items-center justify-center aspect-square"> <svg width="1em" height="1em" viewBox="-18.458 -22.75 191.151 191.151" class="size-8 object-contain rounded" data-icon="mysql">   <use href="#ai:local:mysql"></use>  </svg> </div> </div> </div> </div> </div> </div> </div><div data-panel="1" class="rounded-3xl p-8 h-full justify-between transition-all duration-300 flex flex-col gap-6 shadow-2xl shadow-green-200 border border-green-200 bg-green-50"> <div> <div class="border-b-2 mb-6 flex justify-between border-green-200"> <p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-orange-400 invisible"> Capture <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-orange-400"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-green-500"> Validate <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-green-500"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-blue-400 invisible"> Enrich <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-blue-400"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-purple-500 invisible"> Activate <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-purple-500"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-rose-500 invisible"> Learn <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-rose-500"></span> </p> </div> <div class="grid grid-cols-1 gap-6 md:grid-cols-2"> <div> <h3 class="font-syne text-2xl font-bold text-gray-900 mb-3">Only usable signals leave this layer.</h3> <p class="text-sm text-gray-500 leading-relaxed">Every signal is checked before delivery: deduplication, taxonomy alignment, identifier quality, anomaly detection. Most vendors transmit. Journify validates. A transmitted event the platform cannot use is not a delivered event.</p>  </div> <div class="w-full mt-12"> <div class="flex items-center gap-2 opacity-70 mask-[linear-gradient(to_right,transparent,black_15%,black_95%,transparent)]"> <div class="flex-1 bg-white rounded-2xl p-2"> <div class="flex items-center justify-between mb-5"> <span class="text-xs font-medium">Your events</span> <span class="text-1xs font-semibold text-rose-400 bg-rose-50 border border-rose-200 rounded-full px-2">
317Invalid
318</span> </div> <ul class="flex flex-col divide-y divide-rose-100"> <li class="flex items-center gap-1 py-1"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-3 text-rose-400 shrink-0" data-icon="ph:x-circle-fill">   <use href="#ai:ph:x-circle-fill"></use>  </svg> <span class="text-1xs font-mono">product_buy</span> </li><li class="flex items-center gap-1 py-1"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-3 text-rose-400 shrink-0" data-icon="ph:x-circle-fill">   <use href="#ai:ph:x-circle-fill"></use>  </svg> <span class="text-1xs font-mono">start_checkout</span> </li><li class="flex items-center gap-1 py-1"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-3 text-rose-400 shrink-0" data-icon="ph:x-circle-fill">   <use href="#ai:ph:x-circle-fill"></use>  </svg> <span class="text-1xs font-mono">show_item</span> </li> </ul> </div> <div class="flex flex-col shrink-0"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-6 text-green-600 -rotate-45" data-icon="ph:arrow-bend-right-down">   <use href="#ai:ph:arrow-bend-right-down"></use>  </svg> <span class="text-xs font-medium text-green-700 bg-green-100 border border-green-200 rounded-md px-2 py-1">
319Sync active
320</span> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-6 text-green-600 scale-y-[-1] rotate-45 self-end" data-icon="ph:arrow-bend-right-down">   <use href="#ai:ph:arrow-bend-right-down"></use>  </svg> </div> <div class="flex-1 bg-white rounded-2xl p-2"> <div class="flex items-center justify-between mb-5"> <span class="text-xs font-medium">Your events</span> <span class="text-1xs font-semibold text-green-600 bg-green-50 border border-green-200 rounded-full px-2">
321Valid
322</span> </div> <ul class="flex flex-col divide-y divide-green-100"> <li class="flex items-center gap-1 py-1"> <svg width="1em" height="1em" viewBox="0 0 100 100" class="size-3 shrink-0" data-icon="meta">   <use href="#ai:local:meta"></use>  </svg> <span class="text-1xs text-gray-800 font-medium flex-1">
322AddToCart</span> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-5 text-green-400 shrink-0" data-icon="ph:check-circle-fill">   <use href="#ai:ph:check-circle-fill"></use>  </svg> </li><li class="flex items-center gap-1 py-1"> <svg width="0.89em" height="1em" viewBox="0 0 293768 333327" class="size-3 shrink-0" data-icon="tiktok">   <use href="#ai:local:tiktok"></use>  </svg> <span class="text-1xs text-gray-800 font-medium flex-1">InitiateCheckout</span> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-5 text-green-400 shrink-0" data-icon="ph:check-circle-fill">   <use href="#ai:ph:check-circle-fill"></use>  </svg> </li><li class="flex items-center gap-1 py-1"> <svg width="1em" height="1em" viewBox="-3 0 262 262" class="size-3 shrink-0" data-icon="google">   <use href="#ai:local:google"></use>  </svg> <span class="text-1xs text-gray-800 font-medium flex-1">ViewContent</span> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-5 text-green-400 shrink-0" data-icon="ph:check-circle-fill">   <use href="#ai:ph:check-circle-fill"></use>  </svg> </li> </ul> </div> </div> </div> </div> </div> </div><div data-panel="2" class="rounded-3xl p-8 h-full justify-between transition-all duration-300 flex flex-col gap-6 shadow-2xl shadow-blue-200 border border-blue-200 bg-blue-50"> <div> <div class="border-b-2 mb-6 flex justify-between border-blue-200"> <p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-orange-400 invisible"> Capture <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-orange-400"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-green-500 invisible"> Validate <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-green-500"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-blue-400"> Enrich <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-blue-400"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-purple-500 invisible"> Activate <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-purple-500"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-rose-500 invisible"> Learn <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-rose-500"></span> </p> </div> <div class="grid grid-cols-1 gap-6 md:grid-cols-2"> <div> <h3 class="font-syne text-2xl font-bold text-gray-900 mb-3">Give platforms the context to find your buyers.</h3> <p class="text-sm text-gray-500 leading-relaxed">Every event is matched with hashed identifiers to maximize match rates across all connected ad platforms. Ad platforms can only learn from events they can connect to a real person. Match rate is the metric that proves it is working.</p>  </div> <div class="w-full mt-12"> <div class="relative flex items-center justify-center w-full mask-[linear-gradient(to_right,transparent,black_5%,black_95%,transparent)]"> <div class="flex flex-col gap-1 absolute left-0 top-8 z-20 ml-4 opacity-80"> <span class="text-xs text-blue-900/30 font-medium">Data</span> <div class="flex items-center gap-2"> <div class="size-8 rounded-md bg-white/70 backdrop-blur-md border border-white flex items-center justify-center shrink-0"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-4 text-purple-400" data-icon="ph:phone">   <use href="#ai:ph:phone"></use>  </svg> </div><div class="size-8 rounded-md bg-white/70 backdrop-blur-md border border-white flex items-center justify-center shrink-0"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-4 text-green-500" data-icon="ph:shopping-cart">   <use href="#ai:ph:shopping-cart"></use>  </svg> </div><div class="size-8 rounded-md bg-white/70 backdrop-blur-md border border-white flex items-center justify-center shrink-0"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-4 text-blue-400" data-icon="ph:monitor">   <use href="#ai:ph:monitor"></use>  </svg> </div><div class="size-8 rounded-md bg-white/70 backdrop-blur-md border border-white flex items-center justify-center shrink-0"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-4 text-orange-400" data-icon="ph:envelope">   <use href="#ai:ph:envelope"></use>  </svg> </div><div class="size-8 rounded-md bg-white/70 backdrop-blur-md border border-white flex items-center justify-center shrink-0"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-4 text-rose-400" data-icon="ph:device-mobile">   <use href="#ai:ph:device-mobile"></use>  </svg> </div> </div> </div> <div class="relative mx-6 shrink-0 z-10"> <svg class="absolute top-0 -left-14 w-20 h-12 rotate-8" viewBox="0 0 80 48" fill="none"> <path d="M10 40 Q10 4 60 4" stroke="#60a5fa" stroke-width="1.5" fill="none" stroke-dasharray="none" marker-end="url(#arrow-blue)"></path> <defs> <marker id="arrow-blue" markerWidth="6" markerHeight="6" refX="5" refY="3" orient="auto"> <path d="M0,0 L6,3 L0,6 Z" fill="#60a5fa"></path> </marker> </defs> </svg> <svg class="absolute bottom-0 -right-12 w-20 h-12 rotate-8" viewBox="0 0 80 48" fill="none"> <path d="M20 44 Q70 44 70 4" stroke="#60a5fa" stroke-width="1.5" fill="none" marker-end="url(#arrow-blue-2)"></path> <defs> <marker id="arrow-blue-2" markerWidth="6" markerHeight="6" refX="5" refY="3" orient="auto"> <path d="M0,0 L6,3 L0,6 Z" fill="#60a5fa"></path> </marker> </defs> </svg> <div class="w-24 h-24 opacity-90"> <img src="/_astro/enrich_person.B38X8XFb_1fcuV4.webp" alt="Person" loading="lazy" decoding="async" fetchpriority="auto" width="7
32277" height="777" class="w-full h-full object-cover rounded-full border-2 border-blue-400 shadow-lg shadow-blue-200"> </div> </div> <div class="flex flex-col items-end gap-1 absolute right-0 top-4 z-0 mr-4 opacity-80"> <div class="flex items-center gap-2"> <div class="size-8 rounded-md bg-blue-100 flex items-center justify-center shrink-0"> <svg width="1em" height="1em" viewBox="0 0 100 100" class="size-4" data-icon="meta">   <use href="#ai:local:meta"></use>  </svg> </div><div class="size-8 rounded-md bg-blue-100 flex items-center justify-center shrink-0"> <svg width="1em" height="1em" viewBox="0 0 512 512" class="size-4" data-icon="snap">   <use href="#ai:local:snap"></use>  </svg> </div><div class="size-8 rounded-md bg-blue-100 flex items-center justify-center shrink-0"> <svg width="1em" height="1em" viewBox="0 0 144 144" class="size-4" data-icon="pinterest">   <use href="#ai:local:pinterest"></use>  </svg> </div><div class="size-8 rounded-md bg-blue-100 flex items-center justify-center shrink-0"> <svg width="0.89em" height="1em" viewBox="0 0 293768 333327" class="size-4" data-icon="tiktok">   <use href="#ai:local:tiktok"></use>  </svg> </div><div class="size-8 rounded-md bg-blue-100 flex items-center justify-center shrink-0"> <svg width="1em" height="1em" viewBox="0 0 50 50" class="size-4" data-icon="x">   <use href="#ai:local:x"></use>  </svg> </div> </div> <span class="text-xs text-blue-900/30 font-medium">Ad Platforms</span> </div> </div> </div> </div> </div> </div><div data-panel="3" class="rounded-3xl p-8 h-full justify-between transition-all duration-300 flex flex-col gap-6 shadow-2xl shadow-purple-200 border border-purple-200 bg-purple-50"> <div> <div class="border-b-2 mb-6 flex justify-between border-purple-200"> <p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-orange-400 invisible"> Capture <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-orange-400"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-green-500 invisible"> Validate <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-green-500"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-blue-400 invisible"> Enrich <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-blue-400"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-purple-500"> Activate <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-purple-500"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-rose-500 invisible"> Learn <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-rose-500"></span> </p> </div> <div class="grid grid-cols-1 gap-6 md:grid-cols-2"> <div> <h3 class="font-syne text-2xl font-bold text-gray-900 mb-3">Streamed into every platform. In real time.</h3> <p class="text-sm text-gray-500 leading-relaxed">Signals are sent via official Conversion APIs to Meta, TikTok, Snap, Google, and Amazon simultaneously, in platform-native format, in real time. Every platform gets what it needs in the format it expects. No delays. No workarounds.</p> <a href="/integrations/" class="font-syne cursor-pointer inline-flex items-center gap-2 text-center justify-center rounded-lg font-semibold transition-colors bg-transparent border text-sm px-4 py-2 mt-6 text-purple-500 border-purple-500 hover:bg-transparent hover:opacity-70">See supported platforms <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-4" data-icon="ph:arrow-right">   <use href="#ai:ph:arrow-right"></use>  </svg></a> </div> <div class="w-full mt-12"> <div class="w-full mask-[linear-gradient(to_right,transparent,black_55%,black_65%,transparent)]"> <div class="grid grid-cols-[repeat(5,auto)] gap-2 w-fit mx-auto [&>*:nth-child(6)]:col-start-2"> <div class="bg-purple-100 opacity-70 size-14 rounded-xl flex items-center justify-center aspect-square"> <svg width="1em" height="1em" viewBox="0 0 382 382" class="size-10 object-contain rounded aspect-square" data-icon="linkedin">   <use href="#ai:local:linkedin"></use>  </svg> </div><div class="bg-purple-100 opacity-70 size-14 rounded-xl flex items-center justify-center aspect-square"> <svg width="0.89em" height="1em" viewBox="0 0 293768 333327" class="size-10 object-contain rounded aspect-square" data-icon="tiktok">   <use href="#ai:local:tiktok"></use>  </svg> </div><div class="bg-purple-100 opacity-70 size-14 rounded-xl flex items-center justify-center aspect-square"> <svg width="1em" height="1em" viewBox="0 0 144 144" class="size-10 object-contain rounded aspect-square" data-icon="pinterest">   <use href="#ai:local:pinterest"></use>  </svg> </div><div class="bg-purple-100 opacity-70 size-14 rounded-xl flex items-center justify-center aspect-square"> <svg width="1em" height="1em" viewBox="0 0 512 512" class="size-10 object-contain rounded aspect-square" data-icon="snap">   <use href="#ai:local:snap"></use>  </svg> </div><div class="bg-purple-100 opacity-70 size-14 rounded-xl flex items-center justify-center aspect-square"> <svg width="1em" height="1em" viewBox="0 0 100 100" class="size-10 object-contain rounded aspect-square" data-icon="meta">   <use href="#ai:local:meta"></use>  </svg> </div><div class="bg-purple-100 opacity-70 size-14 rounded-xl flex items-center justify-center aspect-square"> <svg width="1em" height="1em" viewBox="0 0 50 50" class="size-10 object-contain rounded aspect-square" data-icon="x">   <use href="#ai:local:x"></use>  </svg> </div><div class="bg-purple-100 opacity-70 size-14 rounded-xl flex items-center justify-center aspect-square"> <svg width="1em" height="1em" viewBox="0 -13 256 256" class="size-10 object-contain rounded aspect-square" data-icon="google_ads">   <use href="#ai:local:google_ads"></use>  </svg> </div><div class="bg-purple-100 opacity-70 size-14 rounded-xl flex items-center justify-center aspect-square"> <svg width="1em" height="1em" viewBox="0 0 16 16" class="size-10 object-contain rounded aspect-square" data-icon="slack">   <use href="#ai:local:slack"></use>  </svg> </div> </div> </div> </div> </div> </div> </div><div data-panel="4" class="rounded-3xl p-8 h-full justify-between transition-all duration-300 flex flex-col gap-6 shadow-2xl shadow-rose-200 border border-rose-200 bg-rose-50"> <div> <div class="border-b-2 mb-6 flex justify-between border-rose-200"> <p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-orange-400 invisible"> Capture <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-orange-400"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-green-500 invisible"> Validate <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-green-500"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-blue-400 invisible"> Enrich <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-blue-400"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-purple-500 invisible"> Activate <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-purple-500"></span> </p><p class="relative -bottom-0.5 text-sm font-semibold inline-block pb-2 px-2 text-rose-500"> Learn <span class="absolute bottom-0 left-0 right-0 h-0.75 rounded-full bg-rose-500"></span> </p> </div> <div class="grid grid-cols-1 gap-6 md:grid-cols-2"> <div> <h3 class="font-syne text-2xl font-bold text-gray-900 mb-3">Signal quality improves over time.</h3> <p class="text-sm text-gray-500 leading-relaxed">Journify continuously monitors signal quality based on match rate performance, anomaly detection, and platform feedback. Signal quality degrades silently without active management. Learn closes the loop so the data ad platforms receive gets better, not just bigger.</p>  </div> <div class="w-full mt-12"> <div class="flex gap-2 flex-wrap w-full mask-[linear-gradient(to_right,transparent,black_15%,black_65%,transparent)]"> <div> <div class="opacity-70 bg-white rounded-md px-2 py-1 flex flex-row gap-1 items-center"> <svg width="0.89em" height="1em" viewBox="0 0 293768 333327" class="size-3" data-icon="tiktok">   <use href="#ai:local:tiktok"></use>  </svg> <span class="font-semibold text-xs text-gray-900 whitespace-nowrap">TikTok API</span> <span class="ml-auto text-2xs text-black/50 whitespace-nowrap">97% Match</span> </div> <div class="mt-1 h-1 rounded-full bg-gray-100 overflow-hidden"> <div class="h-full rounded-full bg-green-400" style="width: 97%"></div> </div> </div><div> <div class="opacity-70 bg-white rounded-md px-2 py-1 flex flex-row gap-1 items-center"> <svg width="1em" height="1em" viewBox="0 0 512 512" class="size-3" data-icon="snap">   <use href="#ai:local:snap"></use>  </svg> <span class="font-semibold text-xs text-gray-900 whitespace-nowrap">Snap</span> <span class="ml-auto text-2xs text-black/50 whitespace-nowrap">98% Match</span> </div> <div class="mt-1 h-1 rounded-full bg-gray-100 overflow-hidden"> <div class="h-full rounded-full bg-green-400" style="width: 98%"></div> </div> </div><div> <div class="opacity-70 bg-white rounded-md px-2 py-1 flex flex-row gap-1 items-center"> <svg width="1em" height="1em" viewBox="0 0 50 50" class="size-3" data-icon="x">   <use href="#ai:local:x"></use>  </svg> <span class="font-semibold text-xs text-gray-900 whitespace-nowrap">X.com</span> <span class="ml-auto text-2xs text-black/50 whitespace-nowrap">93% Match</span> </div> <div class="mt-1 h-1 rounded-full bg-gray-100 overflow-hidden"> <div class="h-full rounded-full bg-green-400" style="width: 93%"></div> </div> </div><div> <div class="opacity-70 bg-white rounded-md px-2 py-1 flex flex-row gap-1 items-center"> <svg width="1em" height="1em" viewBox="-3 0 262 262" class="size-3" data-icon="google">   <use href="#ai:local:google"></use>  </svg> <span class="font-semibold text-xs text-gray-900 whitespace-nowrap">Google</span> <span class="ml-auto text-2xs text-black/50 whitespace-nowrap">96% Match</span> </div> <div class="mt-1 h-1 rounded-full bg-gray-100 overflow-hidden"> <div class="h-full rounded-full bg-green-400" style="width: 96%"></div> </div> </div><div> <div class="opacity-70 bg-white rounded-md px-2 py-1 flex flex-row gap-1 items-center"> <svg width="1em" height="1em" viewBox="0 0 100 100" class="size-3" data-icon="meta">   <use href="#ai:local:meta"></use>  </svg> <span class="font-semibold text-xs text-gray-900 whitespace-nowrap">Meta API</span> <span class="ml-auto text-2xs text-black/50 whitespace-nowrap">98% Match</span> </div> <div class="mt-1 h-1 rounded-full bg-gray-100 overflow-hidden"> <div class="h-full rounded-full bg-green-400" style="width: 98%"></div> </div> </div> </div> </div> </div> </div> </div> </div> 
322<script type="module">const y=Array.from(document.querySelectorAll("[data-orientation]")),d=y.find(s=>s.offsetParent!==null)??y[0],h=d.querySelectorAll(".step-btn"),v=d.querySelectorAll("[data-panel]"),S=d.dataset.orientation==="vertical",p="border-gray-200 bg-white",g="bg-secondary-100",u="text-secondary-600",m=JSON.parse(document.getElementById("steps-data").textContent),c=(s,o,e)=>{s.classList.remove(...e.split(" ").filter(Boolean)),s.classList.add(...o.split(" ").filter(Boolean))},x=()=>window.innerWidth<768;function r(s){const o=x();h.forEach((e,l)=>{const a=m[l],t=l===s,L=e.querySelector(".step-icon"),f=e.querySelector(".step-icon-svg"),n=e.querySelector(".step-dot");if(c(e,t?a.activeClass:p,t?p:a.activeClass),c(L,t?a.activeIconClass:g,t?g:a.activeIconClass),c(f,t?"text-white":u,t?u:"text-white"),a.activeIconClass.split(" ").filter(Boolean).forEach(i=>n.classList.toggle(i,t)),n.classList.toggle("opacity-0",!t),n.classList.toggle("opacity-100",t),v[l].classList.toggle("hidden",!t),S&&!o){e.classList.toggle("translate-x-10",t);const i=e.querySelector(".step-desc");c(i,t?"max-h-0 opacity-0 -translate-y-1":"max-h-10 opacity-100 translate-y-0",t?"max-h-10 opacity-100 translate-y-0":"max-h-0 opacity-0 -translate-y-1"),e.querySelector(".step-header").classList.toggle("scale-110",t)}e.setAttribute("aria-selected",String(t))})}r(0);h.forEach((s,o)=>{s.addEventListener("mouseenter",()=>r(o)),s.addEventListener("click",()=>r(o))});</script>
322 
322<script id="steps-data" type="application/json">[{"activeClass":"border-orange-400 bg-gradient-to-r from-orange-100 to-white shadow-md shadow-orange-100","activeIconClass":"bg-orange-400"},{"activeClass":"border-green-400 bg-gradient-to-r from-green-100 to-white shadow-md shadow-green-100","activeIconClass":"bg-green-500"},{"activeClass":"border-blue-400 bg-gradient-to-r from-blue-100 to-white shadow-md shadow-blue-100","activeIconClass":"bg-blue-400"},{"activeClass":"border-purple-400 bg-gradient-to-r from-purple-100 to-white shadow-md shadow-purple-100","activeIconClass":"bg-purple-500"},{"activeClass":"border-rose-400 bg-gradient-to-r from-rose-100 to-white shadow-md shadow-rose-100","activeIconClass":"bg-rose-500"}]</script>
322  </div> </section> <section class="w-full"> <div class="max-w-6xl mx-auto px-4 md:px-0">  <div class="py-24"> <span class="inline-flex items-center gap-1.5 font-medium rounded-lg tracking-snug font-syne bg-black text-white text-xs px-3 py-2 uppercase mb-6"> What changes </span> <h2 class="text-xl md:text-5xl font-syne font-medium text-black md:leading-14"> 
323When platforms learn from complete data,
324<span class="font-syne text-brand font-bold-760"> everything improves. </span>  </h2> <p class="max-w-lg my-4">We don't manage your campaigns. We fix what they learn from.</p> <div class="mt-6 grid grid-cols-1 md:grid-cols-3 gap-6"> <div class="bg-white rounded-2xl p-8 border border-gray-200 shadow-sm flex flex-col gap-4"> <div class="flex items-center gap-4"> <div class="w-10 h-10 rounded-full flex items-center justify-center bg-primary-50 border text-primary-500 border-primary-100"> <svg width="1em" height="1em" class="size-5" data-icon="ph:scales-duotone">   <symbol id="ai:ph:scales-duotone" viewBox="0 0 256 256"><g fill="currentColor"><path d="m56 88l32 80c0 17.67-20 24-32 24s-32-6.33-32-24Zm144-32l-32 80c0 17.67 20 24 32 24s32-6.33 32-24Z" opacity=".2"/><path d="m239.43 133l-32-80a8 8 0 0 0-9.16-4.84L136 62V40a8 8 0 0 0-16 0v25.58L54.26 80.19A8 8 0 0 0 48.57 85v.06l-32 79.94a7.9 7.9 0 0 0-.57 3c0 23.31 24.54 32 40 32s40-8.69 40-32a7.9 7.9 0 0 0-.57-3L66.92 93.77L120 82v126h-16a8 8 0 0 0 0 16h48a8 8 0 0 0 0-16h-16V78.42l51-11.32l-26.43 65.9a7.9 7.9 0 0 0-.57 3c0 23.31 24.54 32 40 32s40-8.69 40-32a7.9 7.9 0 0 0-.57-3M56 184c-7.53 0-22.76-3.61-23.93-14.64L56 109.54l23.93 59.82C78.76 180.39 63.53 184 56 184m144-32c-7.53 0-22.76-3.61-23.93-14.64L200 77.54l23.93 59.82C222.76 148.39 207.53 152 200 152"/></g></symbol><use href="#ai:ph:scales-duotone"></use>  </svg> </div> <h3 class="font-syne text-lg font-bold text-black leading-snug">Optimization</h3> </div> <p class="text-sm leading-relaxed">Ad platform AI stabilizes when it learns from real outcomes instead of browser estimates. Budget stops drifting toward the wrong campaigns.</p> </div><div class="bg-white rounded-2xl p-8 border border-gray-200 shadow-sm flex flex-col gap-4"> <div class="flex items-center gap-4"> <div class="w-10 h-10 rounded-full flex items-center justify-center bg-purple-50 border text-purple-900 border-purple-100"> <svg width="1em" height="1em" class="size-5" data-icon="ph:target-duotone">   <symbol id="ai:ph:target-duotone" viewBox="0 0 256 256"><g fill="currentColor"><path d="M176 128a48 48 0 1 1-48-48a48 48 0 0 1 48 48" opacity=".2"/><path d="M221.87 83.16A104.1 104.1 0 1 1 195.67 49l22.67-22.68a8 8 0 0 1 11.32 11.32l-96 96a8 8 0 0 1-11.32-11.32l27.72-27.72a40 40 0 1 0 17.87 31.09a8 8 0 1 1 16-.9a56 56 0 1 1-22.38-41.65l22.75-22.75a87.88 87.88 0 1 0 23.13 29.67a8 8 0 0 1 14.44-6.9"/></g></symbol><use href="#ai:ph:target-duotone"></use>  </svg> </div> <h3 class="font-syne text-lg font-bold text-black leading-snug">Targeting</h3> </div> <p class="text-sm leading-relaxed">Higher match rates mean platforms can find buyers who look like your actual customers. Not a modeled approximation of them.</p> </div><div class="bg-white rounded-2xl p-8 border border-gray-200 shadow-sm flex flex-col gap-4"> <div class="flex items-center gap-4"> <div class="w-10 h-10 rounded-full flex items-center justify-center bg-green-50 border text-green-700 border-green-100"> <svg width="1em" height="1em" class="size-5" data-icon="ph:article-duotone">   <symbol id="ai:ph:article-duotone" viewBox="0 0 256 256"><g fill="currentColor"><path d="M224 56v144a8 8 0 0 1-8 8H40a8 8 0 0 1-8-8V56a8 8 0 0 1 8-8h176a8 8 0 0 1 8 8" opacity=".2"/><path d="M216 40H40a16 16 0 0 0-16 16v144a16 16 0 0 0 16 16h176a16 16 0 0 0 16-16V56a16 16 0 0 0-16-16m0 160H40V56h176zM184 96a8 8 0 0 1-8 8H80a8 8 0 0 1 0-16h96a8 8 0 0 1 8 8m0 32a8 8 0 0 1-8 8H80a8 8 0 0 1 0-16h96a8 8 0 0 1 8 8m0 32a8 8 0 0 1-8 8H80a8 8 0 0 1 0-16h96a8 8 0 0 1 8 8"/></g></symbol><use href="#ai:ph:article-duotone"></use>  </svg> </div> <h3 class="font-syne text-lg font-bold text-black leading-snug">Reporting</h3> </div> <p class="text-sm leading-relaxed">What you see in your dashboards reflects what actually happened. ROAS becomes a number you can defend.</p> </div> </div> </div>  </div> </section> <section class="w-full"> <div class="max-w-6xl mx-auto px-4 md:px-0">  <div class="pb-12 md:py-12 space-y-16"> <div class="flex flex-col items-center text-center justify-center space-y-4"> <span class="inline-flex items-center gap-1.5 font-medium rounded-lg tracking-snug font-syne bg-black text-white text-xs px-3 py-2 uppercase mb-6"> Fits your stack </span> <h2 class="text-xl md:text-5xl font-syne font-medium text-black md:leading-14">  <span class="font-syne text-brand font-bold-760"> You don't replace anything. </span><br>
325You strengthen the layer underneath.
326 </h2> <p class="max-w-lg my-4">
327Journify integrates with your existing setup. You don't change how you run ads. You control
328      what ad platforms learn from.
329</p> </div> <div class="grid grid-cols-1 md:grid-cols-4 gap-6"> <div class="bg-white rounded-2xl p-4 border border-gray-100 shadow-sm flex flex-col gap-4"> <div class="w-full rounded-xl  text-primary-500 flex items-center justify-center overflow-hidden"> <img src="/_astro/stack_website_tracking.DTessDLK_1kOin9.webp" alt="Website tracking" loading="lazy" decoding="async" fetchpriority="auto" width="526" height="400" class="w-full h-full object-cover"> </div> <h3 class="font-syne text-lg font-bold text-black leading-snug">Website tracking</h3> <p class="text-sm leading-relaxed">Works alongside your existing pixel setup. Server-side events run in parallel. No disruption to what is already in place.</p> </div><div class="bg-white rounded-2xl p-4 border border-gray-100 shadow-sm flex flex-col gap-4"> <div class="w-full rounded-xl  text-primary-500 flex items-center justify-center overflow-hidden"> <img src="/_astro/stack_backend.BOlD8AkE_20v9Gu.webp" alt="Backend and payments" loading="lazy" decoding="async" fetchpriority="auto" width="526" height="400" class="w-full h-full object-cover"> </div> <h3 class="font-syne text-lg font-bold text-black leading-snug">Backend and payments</h3> <p class="text-sm leading-relaxed">Connect transactional systems, payment gateways, and backend events. Regional platforms including Salla, Tabby, and Tamara supported.</p> </div><div class="bg-white rounded-2xl p-4 border border-gray-100 shadow-sm flex flex-col gap-4"> <div class="w-full rounded-xl  text-primary-500 flex items-center justify-center overflow-hidden"> <img src="/_astro/stack_crm.BOK2cIIK_uaHcJ.webp" alt="CRM and offline" loading="lazy" decoding="async" fetchpriority="auto" width="526" height="400" class="w-full h-full object-cover"> </div> <h3 class="font-syne text-lg font-bold text-black leading-snug">CRM and offline</h3> <p class="text-sm leading-relaxed">CRM data and offline conversions connected and delivered to ad platforms. The conversions that never reached Meta or TikTok before, now do.</p> </div><div class="bg-white rounded-2xl p-4 border border-gray-100 shadow-sm flex flex-col gap-4"> <div class="w-full rounded-xl  text-primary-500 flex items-center justify-center overflow-hidden"> <img src="/_astro/stack_ads.MMKIVr_7_Z1g7XB4.webp" alt="Ad platforms" loading="lazy" decoding="async" fetchpriority="auto" width="526" height="400" class="w-full h-full object-cover"> </div> <h3 class="font-syne text-lg font-bold text-black leading-snug">Ad platforms</h3> <p class="text-sm leading-relaxed">Official Conversion APIs for Meta, TikTok, Snap, Google, Amazon, LinkedIn, X, and Bing. Every platform receives events structured to its own requirements.</p> </div> </div> <div class="flex items-center justify-center"> <a href="/integrations/" class="font-syne cursor-pointer inline-flex items-center gap-2 text-center rounded-lg font-semibold transition-colors bg-brand text-white hover:bg-primary-700 text-sm px-4 py-2 mx-auto w-full md:w-auto justify-center">
330See all integrations <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-4" data-icon="ph:arrow-right">   <use href="#ai:ph:arrow-right"></use>  </svg></a> </div> </div>  </div> </section> <section class="w-full bg-purple-990"> <div class="max-w-6xl mx-auto px-4 md:px-0">  <div class="mx-auto py-24"> <div class="flex flex-col items-center justify-center mb-14"> <span class="inline-flex items-center gap-1.5 font-medium rounded-lg tracking-snug font-syne text-white text-xs px-3 py-2 uppercase mb-5 bg-[#7F38A9]">
330 How we work </span> <h2 class="text-xl md:text-5xl font-syne font-medium md:leading-14 text-white text-center">  <span class="font-syne text-brand font-bold-760"> What working with Journify </span><br>
331actually looks like.
332 </h2> </div> <div class="relative grid grid-cols-1 md:grid-cols-5 rounded-2xl overflow-hidden mb-8"> <div class="hidden md:block absolute top-13 left-[10%] right-[10%] h-px pointer-events-none" style="background: linear-gradient(to right, #fb923c, #4ade80, #60a5fa, #c084fc, #fb7185)"></div> <div class="px-2 py-8 flex flex-col gap-3 h-full"> <div class="flex flex-col gap-2 items-center relative"> <div class="size-10 rounded-full flex items-center justify-center relative z-10 text-white bg-orange-400" style="box-shadow: 0 0 4px 4px #fb923c33, 0 0 12px 2px #fb923c66"> <svg width="1em" height="1em" class="size-5" data-icon="ph:lightning">   <symbol id="ai:ph:lightning" viewBox="0 0 256 256"><path fill="currentColor" d="M215.79 118.17a8 8 0 0 0-5-5.66L153.18 90.9l14.66-73.33a8 8 0 0 0-13.69-7l-112 120a8 8 0 0 0 3 13l57.63 21.61l-14.62 73.25a8 8 0 0 0 13.69 7l112-120a8 8 0 0 0 1.94-7.26M109.37 214l10.47-52.38a8 8 0 0 0-5-9.06L62 132.71l84.62-90.66l-10.46 52.38a8 8 0 0 0 5 9.06l52.8 19.8Z"/></symbol><use href="#ai:ph:lightning"></use>  </svg> </div> <p class="font-syne text-3xl font-black leading-none text-orange-400"> 48h </p> <p class="text-2xs font-semibold tracking-widest uppercase text-secondary-800"> AVG. Time to live </p> </div> <div class="mt-auto flex-1 border py-4 px-2 rounded-md text-center flex flex-col justify-start border-orange-400"> <h5 class="text-white font-bold mb-3">Fast</h5> <p class="text-xs text-secondary-800 leading-relaxed">Most brands are live within 48 hours. We handle the full implementation.</p> </div> </div><div class="px-2 py-8 flex flex-col gap-3 h-full"> <div class="flex flex-col gap-2 items-center relative"> <div class="size-10 rounded-full flex items-center justify-center relative z-10 text-white bg-green-400" style="box-shadow: 0 0 4px 4px #4ade8033, 0 0 12px 2px #4ade8066"> <svg width="1em" height="1em" class="size-5" data-icon="ph:handshake">   <symbol id="ai:ph:handshake" viewBox="0 0 256 256"><path fill="currentColor" d="m254.3 107.91l-25.52-51.06a16 16 0 0 0-21.47-7.15l-24.87 12.43l-52.39-13.86a8.14 8.14 0 0 0-4.1 0L73.56 62.13L48.69 49.7a16 16 0 0 0-21.47 7.15L1.7 107.9a16 16 0 0 0 7.15 21.47l27 13.51l55.49 39.63a8.1 8.1 0 0 0 2.71 1.25l64 16a8 8 0 0 0 7.6-2.1l55.07-55.08l26.42-13.21a16 16 0 0 0 7.15-21.46Zm-54.89 33.37L165 113.72a8 8 0 0 0-10.68.61C136.51 132.27 116.66 130 104 122l43.24-42h31.81l27.21 54.41ZM41.53 64L62 74.22l-25.57 51.05L16 115.06Zm116 119.13l-58.11-14.52l-49.2-35.14l28-56L128 64.28l9.8 2.59l-45 43.68l-.08.09a16 16 0 0 0 2.72 24.81c20.56 13.13 45.37 11 64.91-5L188 152.66Zm62-57.87l-25.52-51L214.47 64L240 115.06Zm-87.75 92.67a8 8 0 0 1-7.75 6.06a8 8 0 0 1-1.95-.24l-41.67-10.42a7.9 7.9 0 0 1-2.71-1.25l-26.35-18.82a8 8 0 0 1 9.3-13l25.11 17.94L126 208.24a8 8 0 0 1 5.82 9.7Z"/></symbol><use href="#ai:ph:handshake"></use>  </svg> </div> <p class="font-syne text-3xl font-black leading-none text-green-400"> 100+ </p> <p class="text-2xs font-semibold tracking-widest uppercase text-secondary-800"> Brands migrated </p> </div> <div class="mt-auto flex-1 border py-4 px-2 rounded-md text-center flex flex-col justify-start border-green-400"> <h5 class="text-white font-bold mb-3">Reliable</h5> <p class="text-xs text-secondary-800 leading-relaxed">Zero downtime across 80+ brand migrations. Server-side infrastructure built for consistency.</p> </div> </div><div class="px-2 py-8 flex flex-col gap-3 h-full"> <div class="flex flex-col gap-2 items-center relative"> <div class="size-10 rounded-full flex items-center justify-center relative z-10 text-white bg-blue-400" style="box-shadow: 0 0 4px 4px #60a5fa33, 0 0 12px 2px #60a5fa66"> <svg width="1em" height="1em" class="size-5" data-icon="ph:pulse">   <symbol id="ai:ph:pulse" viewBox="0 0 256 256"><path fill="currentColor" d="M240 128a8 8 0 0 1-8 8h-27.06l-37.78 75.58A8 8 0 0 1 160 216h-.4a8 8 0 0 1-7.08-5.14L95.35 60.76l-32.07 70.55A8 8 0 0 1 56 136H24a8 8 0 0 1 0-16h26.85l37.87-83.31a8 8 0 0 1 14.76.46l57.51 151l31.85-63.71A8 8 0 0 1 200 120h32a8 8 0 0 1 8 8"/></symbol><use href="#ai:ph:pulse"></use>  </svg> </div> <p class="font-syne text-3xl font-black leading-none text-blue-400"> 24/7 </p> <p class="text-2xs font-semibold tracking-widest uppercase text-secondary-800"> Signal Monitoring </p> </div> <div class="mt-auto flex-1 border py-4 px-2 rounded-md text-center flex flex-col justify-start border-blue-400"> <h5 class="text-white font-bold mb-3">Monitored</h5> <p class="text-xs text-secondary-800 leading-relaxed">Signal quality runs continuously in the background. When something degrades, you know before it affects performance.</p> </div> </div><div class="px-2 py-8 flex flex-col gap-3 h-full"> <div class="flex flex-col gap-2 items-center relative"> <div class="size-10 rounded-full flex items-center justify-center relative z-10 text-white bg-purple-400" style="box-shadow: 0 0 4px 4px #c084fc33, 0 0 12px 2px #c084fc66"> <svg width="1em" height="1em" class="size-5" data-icon="ph:headset">   <symbol id="ai:ph:headset" viewBox="0 0 256 256">
332<path fill="currentColor" d="M201.89 54.66A103.43 103.43 0 0 0 128.79 24H128A104 104 0 0 0 24 128v56a24 24 0 0 0 24 24h16a24 24 0 0 0 24-24v-40a24 24 0 0 0-24-24H40.36a88.12 88.12 0 0 1 150.18-54.07A87.4 87.4 0 0 1 215.65 120H192a24 24 0 0 0-24 24v40a24 24 0 0 0 24 24h24a24 24 0 0 1-24 24h-56a8 8 0 0 0 0 16h56a40 40 0 0 0 40-40v-80a103.4 103.4 0 0 0-30.11-73.34M64 136a8 8 0 0 1 8 8v40a8 8 0 0 1-8 8H48a8 8 0 0 1-8-8v-48Zm128 56a8 8 0 0 1-8-8v-40a8 8 0 0 1 8-8h24v56Z"/></symbol><use href="#ai:ph:headset"></use>  </svg> </div> <p class="font-syne text-3xl font-black leading-none text-purple-400"> infinite </p> <p class="text-2xs font-semibold tracking-widest uppercase text-secondary-800"> Ongoing support </p> </div> <div class="mt-auto flex-1 border py-4 px-2 rounded-md text-center flex flex-col justify-start border-purple-400"> <h5 class="text-white font-bold mb-3">Supported</h5> <p class="text-xs text-secondary-800 leading-relaxed">From onboarding to ongoing. Our team stays involved after go-live. Not just during setup.</p> </div> </div><div class="px-2 py-8 flex flex-col gap-3 h-full"> <div class="flex flex-col gap-2 items-center relative"> <div class="size-10 rounded-full flex items-center justify-center relative z-10 text-white bg-rose-400" style="box-shadow: 0 0 4px 4px #fb718533, 0 0 12px 2px #fb718566"> <svg width="1em" height="1em" class="size-5" data-icon="ph:cloud-arrow-up">   <symbol id="ai:ph:cloud-arrow-up" viewBox="0 0 256 256"><path fill="currentColor" d="M178.34 165.66L160 147.31V208a8 8 0 0 1-16 0v-60.69l-18.34 18.35a8 8 0 0 1-11.32-11.32l32-32a8 8 0 0 1 11.32 0l32 32a8 8 0 0 1-11.32 11.32M160 40a88.08 88.08 0 0 0-78.71 48.68A64 64 0 1 0 72 216h40a8 8 0 0 0 0-16H72a48 48 0 0 1 0-96c1.1 0 2.2 0 3.29.12A88 88 0 0 0 72 128a8 8 0 0 0 16 0a72 72 0 1 1 100.8 66a8 8 0 0 0 3.2 15.34a7.9 7.9 0 0 0 3.2-.68A88 88 0 0 0 160 40"/></symbol><use href="#ai:ph:cloud-arrow-up"></use>  </svg> </div> <p class="font-syne text-3xl font-black leading-none text-rose-400"> 14.5M </p> <p class="text-2xs font-semibold tracking-widest uppercase text-secondary-800"> Daily events </p> </div> <div class="mt-auto flex-1 border py-4 px-2 rounded-md text-center flex flex-col justify-start border-rose-400"> <h5 class="text-white font-bold mb-3">At scale</h5> <p class="text-xs text-secondary-800 leading-relaxed">14.5 million events processed daily across all connected platforms.</p> </div> </div> </div> <div class="flex items-center justify-center"> <a href="/customers/" class="font-syne cursor-pointer inline-flex items-center gap-2 rounded-lg font-semibold transition-colors bg-brand text-white hover:bg-primary-700 text-sm px-4 py-2 w-full md:w-auto text-center justify-center">
333All customer stories <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-4" data-icon="ph:arrow-right">   <use href="#ai:ph:arrow-right"></use>  </svg></a> </div> </div>  </div> </section> <section class="w-full"> <div class="max-w-6xl mx-auto px-4 md:px-0">  <div class="grid grid-cols-1 lg:grid-cols-[1.15fr_1fr] gap-14 items-center pt-14" data-astro-cid-6ifp7iq4> <div class="flex flex-col gap-7" data-astro-cid-6ifp7iq4> <span class="inline-flex items-center gap-1.5 font-medium rounded-lg tracking-snug font-syne bg-black text-white text-xs px-3 py-2 uppercase w-fit"> New · Insights </span> <h2 class="text-xl md:text-5xl font-syne font-medium text-black md:leading-14 mb-0"> 
334Signal reaches the platforms.<br data-astro-cid-6ifp7iq4> <span class="font-syne text-brand font-bold-760"> Insights tells you what it did. </span>  </h2> <p class="text-lg leading-relaxed text-gray-500 max-w-lg" data-astro-cid-6ifp7iq4>
335Insights pulls data from your ad platforms, analytics tools, and stores into one place, so you
336      can see how the business is really performing. No dashboard hopping required.
337</p> <div data-astro-cid-6ifp7iq4> <a href="/insights/" class="font-syne cursor-pointer inline-flex items-center gap-2 text-center justify-center rounded-lg font-semibold transition-colors bg-brand text-white hover:bg-primary-700 text-base px-6 py-3">Explore Insights <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-4" data-icon="ph:arrow-right">   <use href="#ai:ph:arrow-right"></use>  </svg></a> </div> </div> <div class="js-insights-widget bg-white rounded-xl shadow-xl p-7 flex flex-col gap-6" data-astro-cid-6ifp7iq4> <div class="flex items-center justify-between" data-astro-cid-6ifp7iq4> <span class="text-xs font-semibold tracking-widest uppercase text-black" data-astro-cid-6ifp7iq4>Performance overview</span> <span class="text-sm font-semibold text-black bg-secondary rounded-full px-3 py-1.5" data-astro-cid-6ifp7iq4>Last 30 days</span> </div> <div class="grid grid-cols-3 gap-5" data-astro-cid-6ifp7iq4> <div class="flex flex-col gap-2" data-astro-cid-6ifp7iq4> <span class="text-2xs font-semibold tracking-widest uppercase text-brand" data-astro-cid-6ifp7iq4> Blended ROAS </span> <span class="js-counter font-syne font-extrabold text-3xl leading-none text-brand" data-count-to="4.2" data-decimals="1" data-suffix="x" data-astro-cid-6ifp7iq4>
3380x </span> <span class="text-sm text-green-600" data-astro-cid-6ifp7iq4>
338 + 0.9 vs last period </span> </div><div class="flex flex-col gap-2" data-astro-cid-6ifp7iq4> <span class="text-2xs font-semibold tracking-widest uppercase text-gray-900" data-astro-cid-6ifp7iq4> Revenue </span> <span class="js-counter font-syne font-extrabold text-3xl leading-none text-black" data-count-to="1.24" data-decimals="2" data-suffix="M" data-astro-cid-6ifp7iq4>
3390M </span> <span class="text-sm text-green-600" data-astro-cid-6ifp7iq4> + 18% </span> </div><div class="flex flex-col gap-2" data-astro-cid-6ifp7iq4> <span class="text-2xs font-semibold tracking-widest uppercase text-gray-900" data-astro-cid-6ifp7iq4> Cost per purchase </span> <span class="js-counter font-syne font-extrabold text-3xl leading-none text-black" data-count-to="61.4" data-decimals="2" data-suffix data-astro-cid-6ifp7iq4>
3400 </span> <span class="text-sm text-red-600" data-astro-cid-6ifp7iq4> - 22% </span> </div> </div> <svg viewBox="0 0 520 120" preserveAspectRatio="none" class="w-full h-30 block" data-astro-cid-6ifp7iq4> <path d="M0 96 L52 88 L104 92 L156 70 L208 74 L260 52 L312 58 L364 36 L416 28 L468 20 L520 8 L520 120 L0 120 Z" fill="rgba(248,21,102,0.08)" data-astro-cid-6ifp7iq4></path> <path class="js-line-path" d="M0 96 L52 88 L104 92 L156 70 L208 74 L260 52 L312 58 L364 36 L416 28 L468 20 L520 8" fill="none" stroke="#f81566" stroke-width="3" stroke-linejoin="round" stroke-linecap="round" data-astro-cid-6ifp7iq4></path> </svg> <div class="flex flex-col gap-3.5" data-astro-cid-6ifp7iq4> <div class="grid grid-cols-[90px_1fr_64px] items-center gap-4" data-astro-cid-6ifp7iq4> <span class="text-sm text-black" data-astro-cid-6ifp7iq4>Meta</span> <span class="h-2 rounded-full bg-black/[0.08] block" data-astro-cid-6ifp7iq4> <span class="js-channel-bar block h-2 rounded-full" data-target-width="78%" style="background:var(--color-brand)" data-astro-cid-6ifp7iq4></span> </span> <span class="text-sm text-gray-500 text-right" data-astro-cid-6ifp7iq4>4.9x</span> </div><div class="grid grid-cols-[90px_1fr_64px] items-center gap-4" data-astro-cid-6ifp7iq4> <span class="text-sm text-black" data-astro-cid-6ifp7iq4>Google</span> <span class="h-2 rounded-full bg-black/[0.08] block" data-astro-cid-6ifp7iq4> <span class="js-channel-bar block h-2 rounded-full" data-target-width="61%" style="background:var(--color-purple-500)" data-astro-cid-6ifp7iq4></span> </span> <span class="text-sm text-gray-500 text-right" data-astro-cid-6ifp7iq4>3.8x</span> </div><div class="grid grid-cols-[90px_1fr_64px] items-center gap-4" data-astro-cid-6ifp7iq4> <span class="text-sm text-black" data-astro-cid-6ifp7iq4>TikTok</span> <span class="h-2 rounded-full bg-black/[0.08] block" data-astro-cid-6ifp7iq4> <span class="js-channel-bar block h-2 rounded-full" data-target-width="42%" style="background:var(--color-primary-300)" data-astro-cid-6ifp7iq4></span> </span> <span class="text-sm text-gray-500 text-right" data-astro-cid-6ifp7iq4>2.6x</span> </div> </div> </div> </div>  
340<script type="module">function h(t){const o=parseFloat(t.dataset.countTo||"0"),e=parseInt(t.dataset.decimals||"0",10),n=t.dataset.suffix||"";if(window.matchMedia("(prefers-reduced-motion: reduce)").matches){t.textContent=o.toFixed(e)+n;return}const r=1200,d=performance.now();function a(u){const i=Math.min((u-d)/r,1),f=1-Math.pow(1-i,3);t.textContent=(o*f).toFixed(e)+n,i<1&&requestAnimationFrame(a)}requestAnimationFrame(a)}const m=document.querySelectorAll(".js-insights-widget"),c=new IntersectionObserver(t=>{t.forEach(o=>{if(!o.isIntersecting)return;const e=o.target;e.querySelectorAll(".js-counter").forEach(h);const n=e.querySelector(".js-line-path");n&&requestAnimationFrame(()=>n.style.strokeDashoffset="0"),e.querySelectorAll(".js-channel-bar").forEach((s,r)=>{setTimeout(()=>{s.style.width=s.dataset.targetWidth||"0"},r*100)}),c.unobserve(e)})},{threshold:.3});m.forEach(t=>c.observe(t));</script>
340  </div> </section> <section class="w-full"> <div class="max-w-6xl mx-auto px-4 md:px-0">  <div class="flex pt-24 pb-12"> <div class="space-y-6 flex-1"> <span class="inline-flex items-center gap-1.5 font-medium rounded-lg tracking-snug font-syne bg-black text-white text-xs px-3 py-2 uppercase"> Resources </span> <h2 class="text-xl md:text-5xl font-syne font-medium text-black md:leading-14"> 
341Go deeper on<br> <span class="font-syne text-brand font-bold-760"> Ad signal infrastructure </span>  </h2> <p class="max-w-xl">
342Read how brands diagnosed their signal gaps, improved match rates, and stabilized ROAS with
343      Journify.
344</p> </div> <div class="hidden md:flex items-center"> <a href="/resources/" class="font-syne cursor-pointer inline-flex items-center gap-2 text-center justify-center rounded-lg font-semibold transition-colors bg-brand text-white hover:bg-primary-700 text-sm px-4 py-2">Browse resources <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-4" data-icon="ph:arrow-right">   <use href="#ai:ph:arrow-right"></use>  </svg></a> </div> </div> <div class="relative md:-mx-16 overflow-hidden"> <div id="j84h82s-fade-left" class="pointer-events-none absolute left-0 top-0 h-full w-24 z-10 bg-linear-to-r from-white to-transparent opacity-0 transition-opacity duration-300"></div> <div id="j84h82s-fade-right" class="pointer-events-none absolute right-0 top-0 h-full w-24 z-10 bg-linear-to-l from-white to-transparent opacity-0 transition-opacity duration-300"></div> <div id="j84h82s" class="flex gap-5 no-scrollbar overflow-x-auto scroll-smooth"> <div class="group relative shrink-0 w-72 overflow-hidden"> <a class="article-card flex flex-col h-full bg-white border border-gray-100 rounded-2xl overflow-hidden no-underline text-inherit transition-all duration-150 hover:-translate-y-0.5 hover:border-[#ddd7da]" href="/resources/what-is-a-server-side-gtm-container/"> <div class="relative flex items-center justify-center overflow-hidden border-b border-gray-100" style="aspect-ratio:16/10;"> <div class="absolute top-3.5 left-3.5 z-10"> <span class="inline-flex items-center gap-1.5 font-medium rounded-lg tracking-snug font-syne bg-gray-100 text-gray-500 text-1xs px-2 py-1 uppercase"> glossary </span> </div> <img src="https://cdn.sanity.io/images/9g3hocpu/production/d04bb91c1acf6e80f84207e652793836e0284c8b-1600x900.png?w=800&fm=webp" alt="What is a server-side Google Tag Manager (sGTM) container?" class="w-full h-full object-cover" loading="lazy"> </div> <div class="flex flex-col gap-3 p-5 pb-6 flex-1"> <h3 class="font-bold text-[19px] leading-[1.3] tracking-[-0.01em] text-gray-900 m-0" style="text-wrap:balance;"> What is a server-side Google Tag Manager (sGTM) container? </h3>  </div> </a> </div><div class="group relative shrink-0 w-72 overflow-hidden"> <a class="article-card flex flex-col h-full bg-white border border-gray-100 rounded-2xl overflow-hidden no-underline text-inherit transition-all duration-150 hover:-translate-y-0.5 hover:border-[#ddd7da]" href="/resources/what-is-signal-completeness/"> <div class="relative flex items-center justify-center overflow-hidden border-b border-gray-100" style="aspect-ratio:16/10;"> <div class="absolute top-3.5 left-3.5 z-10"> <span class="inline-flex items-center gap-1.5 font-medium rounded-lg tracking-snug font-syne bg-gray-100 text-gray-500 text-1xs px-2 py-1 uppercase"> glossary </span> </div> <img src="https://cdn.sanity.io/images/9g3hocpu/production/0c329b01e6bffd5d8cf927bf556c54a62da16876-1600x900.jpg?w=800&fm=webp" alt="What is signal completeness?" class="w-full h-full object-cover" loading="lazy"> </div> <div class="flex flex-col gap-3 p-5 pb-6 flex-1"> <h3 class="font-bold text-[19px] leading-[1.3] tracking-[-0.01em] text-gray-900 m-0" style="text-wrap:balance;"> What is signal completeness? </h3>  </div> </a> </div><div class="group relative shrink-0 w-72 overflow-hidden"> <a class="article-card flex flex-col h-full bg-white border border-gray-100 rounded-2xl overflow-hidden no-underline text-inherit transition-all duration-150 hover:-translate-y-0.5 hover:border-[#ddd7da]" href="/resources/how-much-does-signal-quality-affect-roas/"> <div class="relative flex items-center justify-center overflow-hidden border-b border-gray-100" style="aspect-ratio:16/10;"> <div class="absolute top-3.5 left-3.5 z-10"> <span class="inline-flex items-center gap-1.5 font-medium rounded-lg tracking-snug font-syne bg-gray-100 text-gray-500 text-1xs px-2 py-1 uppercase"> glossary </span> </div> <img src="https://cdn.sanity.io/images/9g3hocpu/production/e123bc844a6d4b1c562d3e7a94dc9fd0142d0e46-1600x900.png?w=800&fm=webp" alt="How much does signal quality actually move ROAS? The numbers" class="w-full h-full object-cover" loading="lazy"> </div> <div class="flex flex-col gap-3 p-5 pb-6 flex-1"> <h3 class="font-bold text-[19px] leading-[1.3] tracking-[-0.01em] text-gray-900 m-0" style="text-wrap:balance;"> How much does signal quality actually move ROAS? The numbers </h3>  </div> </a> </div><div class="group relative shrink-0 w-72 overflow-hidden"> <a class="article-card flex flex-col h-full bg-white border border-gray-100 rounded-2xl overflow-hidden no-underline text-inherit transition-all duration-150 hover:-translate-y-0.5 hover:border-[#ddd7da]" href="/resources/what-is-match-rate-and-why-it-determines-ad-spend-performance/"> <div class="relative flex items-center justify-center overflow-hidden border-b border-gray-100" style="aspect-ratio:16/10;"> <div class="absolute top-3.5 left-3.5 z-10"> <span class="inline-flex items-center gap-1.5 font-medium rounded-lg tracking-snug font-syne bg-gray-100 text-gray-500 text-1xs px-2 py-1 uppercase"> glossary </span> </div> <img src="https://cdn.sanity.io/images/9g3hocpu/production/a3fb320c7aa1a9693d4e9e0f561837067af2c6d5-1600x900.png?w=800&fm=webp" alt="What is match rate and why it determines whether your ad spend is working" class="w-full h-full object-cover" loading="lazy"> </div> <div class="flex flex-col gap-3 p-5 pb-6 flex-1"> <h3 class="font-bold text-[19px] leading-[1.3] tracking-[-0.01em] text-gray-900 m-0" style="text-wrap:balance;"> What is match rate and why it determines whether your ad spend is working </h3>  </div> </a> </div><div class="group relative shrink-0 w-72 overflow-hidden"> <a class="article-card flex flex-col h-full bg-white border border-gray-100 rounded-2xl overflow-hidden no-underline text-inherit transition-all duration-150 hover:-translate-y-0.5 hover:border-[#ddd7da]" href="/resources/meta-pixel/"> <div class="relative flex items-center justify-center overflow-hidden border-b border-gray-100" style="aspect-ratio:16/10;"> <div class="absolute top-3.5 left-3.5 z-10"> <span class="inline-flex items-center gap-1.5 font-medium rounded-lg tracking-snug font-syne bg-gray-100 text-gray-500 text-1xs px-2 py-1 uppercase"> glossary </span> </div> <img src="https://cdn.sanity.io/images/9g3hocpu/production/46c119a681733612ec05587f14d8140d11d35ff2-1600x900.png?w=800&fm=webp" alt="What is a Meta pixel and why is it no longer enough?" class="w-full h-full object-cover" loading="lazy"> </div> <div class="flex flex-col gap-3 p-5 pb-6 flex-1"> <h3 class="font-bold text-[19px] leading-[1.3] tracking-[-0.01em] text-gray-900 m-0" style="text-wrap:balance;"> What is a Meta pixel and why is it no longer enough? </h3>  </div> </a> </div><div class="group relative shrink-0 w-72 overflow-hidden"> <a class="article-card flex flex-col h-full bg-white border border-gray-100 rounded-2xl overflow-hidden no-underline text-inherit transition-all duration-150 hover:-translate-y-0.5 hover:border-[#ddd7da]" href="/resources/signal-loss/"> <div class="relative flex items-center justify-center overflow-hidden border-b border-gray-100" style="aspect-ratio:16/10;"> <div class="absolute top-3.5 left-3.5 z-10"> <span class="inline-flex items-center gap-1.5 font-medium rounded-lg tracking-snug font-syne bg-gray-100 text-gray-500 text-1xs px-2 py-1 uppercase"> glossary </span> </div> <img src="https://cdn.sanity.io/images/9g3hocpu/production/5b2e241eca3362144562bfcaebbe42b385b36636-1600x900.png?w=800&fm=webp" alt="What is signal loss in digital advertising?" class="w-full h-full object-cover" loading="lazy"> </div> <div class="flex flex-col gap-3 p-5 pb-6 flex-1"> <h3 class="font-bold text-[19px] leading-[1.3] tracking-[-0.01em] text-gray-900 m-0" style="text-wrap:balance;"> What is signal loss in digital advertising? </h3>  </div> </a> </div> </div> <div class="justify-center gap-3 mt-8 hidden md:flex"> <button type="button" id="j84h82s-prev" class="font-syne cursor-pointer inline-flex gap-2 text-center font-semibold transition-colors bg-brand text-white hover:bg-primary-700 justify-center items-center aspect-square w-12 h-9 rounded-xl p-0"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-4" data-icon="ph:arrow-left">   <use href="#ai:ph:arrow-left"></use>  </svg></button> <button type="button" id="j84h82s-next" class="font-syne cursor-pointer inline-flex gap-2 text-center font-semibold transition-colors bg-brand text-white hover:bg-primary-700 justify-center items-center aspect-square w-12 h-9 rounded-xl p-0"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-4" data-icon="ph:arrow-right">   <use href="#ai:ph:arrow-right"></use>  </svg></button> </div> </div> 
344<script>(function(){const uid = "j84h82s";
345
346  const carousel = document.getElementById(uid);
347  const prevBtn = document.getElementById(`${uid}-prev`);
348  const nextBtn = document.getElementById(`${uid}-next`);
349  const fadeLeft = document.getElementById(`${uid}-fade-left`);
350  const fadeRight = document.getElementById(`${uid}-fade-right`);
351  const STEP = 340;
352  const ACTIVE = ['bg-primary-500', 'text-white', 'hover:bg-primary-600', 'cursor-pointer'];
353  const INACTIVE = [
354    'bg-secondary-500',
355    'cursor-not-allowed',
356    'text-white',
357    'hover:bg-secondary-600',
358  ];
359
360  function applyVariant(el, variant) {
361    [...ACTIVE, ...INACTIVE].forEach((c) => el.classList.remove(c));
362    variant.forEach((c) => el.classList.add(c));
363  }
364
365  function updateButtons() {
366    const atStart = carousel.scrollLeft <= 0;
367    const atEnd = carousel.scrollLeft + carousel.clientWidth >= carousel.scrollWidth - 1;
368    applyVariant(prevBtn, atStart ? INACTIVE : ACTIVE);
369    applyVariant(nextBtn, atEnd ? INACTIVE : ACTIVE);
370    fadeLeft.classList.toggle('opacity-0', atStart);
371    fadeLeft.classList.toggle('opacity-100', !atStart);
372    fadeRight.classList.toggle('opacity-0', atEnd);
373    fadeRight.classList.toggle('opacity-100', !atEnd);
374  }
375
376  prevBtn.addEventListener('click', () => carousel.scrollBy({ left: -STEP, behavior: 'smooth' }));
377  nextBtn.addEventListener('click', () => carousel.scrollBy({ left: STEP, behavior: 'smooth' }));
378  carousel.addEventListener('scroll', updateButtons, { passive: true });
379  requestAnimationFrame(updateButtons);
380})();</script>
380 <div class="mt-6 flex md:hidden items-center w-full"> <a href="/resources/" class="font-syne cursor-pointer inline-flex items-center gap-2 rounded-lg font-semibold transition-colors bg-brand text-white hover:bg-primary-700 text-sm px-4 py-2 w-full text-center justify-center">Browse resources <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-4" data-icon="ph:arrow-right">   <use href="#ai:ph:arrow-right"></use>  </svg></a> </div> <section class="py-16"> <div class="grid grid-cols-1 md:grid-cols-2 md:gap-20"> <div class="md:sticky top-16 space-y-6"> <span class="inline-flex items-center gap-1.5 font-medium rounded-lg tracking-snug font-syne bg-black text-white text-xs px-3 py-2 uppercase"> FAQ </span> <h2 class="text-xl md:text-5xl font-syne text-black md:leading-14 font-bold-760"> 
381Common<br>questions.
382 </h2> <p class="max-w-xs">
383Still have questions? We'll walk you through exactly how Journify works for your stack.
384</p> </div> <div class="flex flex-col"> <div class="faq-item group border-b border-black py-5" data-default-open="true"> <button class="faq-trigger flex items-center justify-between gap-4 cursor-pointer w-full text-left" aria-expanded="false"> <h3 class="font-syne text-base font-bold leading-snug text-gray-900 group-hover:underline group-hover:decoration-3 group-hover:decoration-rose-500 group-hover:underline-offset-2"> What exactly changes in our setup if we use Journify? </h3> <span class="shrink-0 size-6 rounded-full flex items-center justify-center transition-colors bg-secondary-200 text-purple-900 group-hover:bg-rose-500 group-hover:text-white [.faq-open_&]:bg-rose-500 [.faq-open_&]:text-white"> <svg width="1em" height="1em" class="size-3 transition-transform duration-300 group-hover:rotate-45 [.faq-open_&#38;]:rotate-45" data-icon="ph:plus-bold">   <symbol id="ai:ph:plus-bold" viewBox="0 0 256 256"><path fill="currentColor" d="M228 128a12 12 0 0 1-12 12h-76v76a12 12 0 0 1-24 0v-76H40a12 12 0 0 1 0-24h76V40a12 12 0 0 1 24 0v76h76a12 12 0 0 1 12 12"/></symbol><use href="#ai:ph:plus-bold"></use>  </svg> </span> </button> <div class="faq-body grid grid-rows-[0fr] group-hover:grid-rows-[1fr] [.faq-open_&]:grid-rows-[1fr] transition-all duration-300"> <div class="overflow-hidden"> <h3 class="text-sm text-gray-500 leading-relaxed mt-3 pr-12">Your tracking sources stay in place. Journify improves how conversion data is structured, validated, and delivered through server-side tracking and Conversion APIs. Ad platforms receive signals they can actually learn from.</h3>  </div> </div> </div><div class="faq-item group border-b border-black py-5"> <button class="faq-trigger flex items-center justify-between gap-4 cursor-pointer w-full text-left" aria-expanded="false"> <h3 class="font-syne text-base font-bold leading-snug text-gray-900 group-hover:underline group-hover:decoration-3 group-hover:decoration-rose-500 group-hover:underline-offset-2"> We already send events through Conversion APIs. Why would this help? </h3> <span class="shrink-0 size-6 rounded-full flex items-center justify-center transition-colors bg-secondary-200 text-purple-900 group-hover:bg-rose-500 group-hover:text-white [.faq-open_&]:bg-rose-500 [.faq-open_&]:text-white"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-3 transition-transform duration-300 group-hover:rotate-45 [.faq-open_&#38;]:rotate-45" data-icon="ph:plus-bold">   <use href="#ai:ph:plus-bold"></use>  </svg> </span> </button> <div class="faq-body grid grid-rows-[0fr] group-hover:grid-rows-[1fr] [.faq-open_&]:grid-rows-[1fr] transition-all duration-300"> <div class="overflow-hidden"> <h3 class="text-sm text-gray-500 leading-relaxed mt-3 pr-12">Sending events is not the same as sending usable signals. Many setups struggle with weak identifiers, duplicates, or inconsistent structures. Journify improves match quality and signal consistency so optimization becomes more stable across every connected platform.</h3>  </div> </div> </div><div class="faq-item group border-b border-black py-5"> <button class="faq-trigger flex items-center justify-between gap-4 cursor-pointer w-full text-left" aria-expanded="false"> <h3 class="font-syne text-base font-bold leading-snug text-gray-900 group-hover:underline group-hover:decoration-3 group-hover:decoration-rose-500 group-hover:underline-offset-2"> What do we see inside the product? </h3> <span class="shrink-0 size-6 rounded-full flex items-center justify-center transition-colors bg-secondary-200 text-purple-900 group-hover:bg-rose-500 group-hover:text-white [.faq-open_&]:bg-rose-500 [.faq-open_&]:text-white"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-3 transition-transform duration-300 group-hover:rotate-45 [.faq-open_&#38;]:rotate-45" data-icon="ph:plus-bold">   <use href="#ai:ph:plus-bold"></use>  </svg> </span> </button> <div class="faq-body grid grid-rows-[0fr] group-hover:grid-rows-[1fr] [.faq-open_&]:grid-rows-[1fr] transition-all duration-300"> <div class="overflow-hidden"> <h3 class="text-sm text-gray-500 leading-relaxed mt-3 pr-12">
384Dashboards focused on conversion delivery and signal quality: which conversions are sent, identifier strength, match quality per platform, duplicates, and dropped events. You see what ad platforms are actually receiving and how that picture changes over time.</h3>  </div> </div> </div><div class="faq-item group border-b border-black py-5"> <button class="faq-trigger flex items-center justify-between gap-4 cursor-pointer w-full text-left" aria-expanded="false"> <h3 class="font-syne text-base font-bold leading-snug text-gray-900 group-hover:underline group-hover:decoration-3 group-hover:decoration-rose-500 group-hover:underline-offset-2"> Does this require engineering resources? </h3> <span class="shrink-0 size-6 rounded-full flex items-center justify-center transition-colors bg-secondary-200 text-purple-900 group-hover:bg-rose-500 group-hover:text-white [.faq-open_&]:bg-rose-500 [.faq-open_&]:text-white"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-3 transition-transform duration-300 group-hover:rotate-45 [.faq-open_&#38;]:rotate-45" data-icon="ph:plus-bold">   <use href="#ai:ph:plus-bold"></use>  </svg> </span> </button> <div class="faq-body grid grid-rows-[0fr] group-hover:grid-rows-[1fr] [.faq-open_&]:grid-rows-[1fr] transition-all duration-300"> <div class="overflow-hidden"> <h3 class="text-sm text-gray-500 leading-relaxed mt-3 pr-12">Depends on your stack. Some integrations are straightforward. Others need coordination with a backend or CRM team. We support you through the full implementation.</h3>  </div> </div> </div><div class="faq-item group border-b border-black py-5"> <button class="faq-trigger flex items-center justify-between gap-4 cursor-pointer w-full text-left" aria-expanded="false"> <h3 class="font-syne text-base font-bold leading-snug text-gray-900 group-hover:underline group-hover:decoration-3 group-hover:decoration-rose-500 group-hover:underline-offset-2"> Does Journify replace our analytics or reporting tools? </h3> <span class="shrink-0 size-6 rounded-full flex items-center justify-center transition-colors bg-secondary-200 text-purple-900 group-hover:bg-rose-500 group-hover:text-white [.faq-open_&]:bg-rose-500 [.faq-open_&]:text-white"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-3 transition-transform duration-300 group-hover:rotate-45 [.faq-open_&#38;]:rotate-45" data-icon="ph:plus-bold">   <use href="#ai:ph:plus-bold"></use>  </svg> </span> </button> <div class="faq-body grid grid-rows-[0fr] group-hover:grid-rows-[1fr] [.faq-open_&]:grid-rows-[1fr] transition-all duration-300"> <div class="overflow-hidden"> <h3 class="text-sm text-gray-500 leading-relaxed mt-3 pr-12">No. Journify strengthens the data your reporting relies on. Reliable analysis starts with reliable inputs. We fix the inputs.</h3>  </div> </div> </div><div class="faq-item group border-b border-black py-5"> <button class="faq-trigger flex items-center justify-between gap-4 cursor-pointer w-full text-left" aria-expanded="false"> <h3 class="font-syne text-base font-bold leading-snug text-gray-900 group-hover:underline group-hover:decoration-3 group-hover:decoration-rose-500 group-hover:underline-offset-2"> How does this relate to attribution? </h3> <span class="shrink-0 size-6 rounded-full flex items-center justify-center transition-colors bg-secondary-200 text-purple-900 group-hover:bg-rose-500 group-hover:text-white [.faq-open_&]:bg-rose-500 [.faq-open_&]:text-white"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-3 transition-transform duration-300 group-hover:rotate-45 [.faq-open_&#38;]:rotate-45" data-icon="ph:plus-bold">   <use href="#ai:ph:plus-bold"></use>  </svg> </span> </button> <div class="faq-body grid grid-rows-[0fr] group-hover:grid-rows-[1fr] [.faq-open_&]:grid-rows-[1fr] transition-all duration-300"> <div class="overflow-hidden"> <h3 class="text-sm text-gray-500 leading-relaxed mt-3 pr-12">Journify operates upstream of attribution. Most attribution problems start with incomplete conversion data inside ad platforms. We fix the data that reaches platforms before any attribution model runs on it.</h3>  </div> </div> </div><div class="faq-item group border-b border-black py-5"> <button class="faq-trigger flex items-center justify-between gap-4 cursor-pointer w-full text-left" aria-expanded="false"> <h3 class="font-syne text-base font-bold leading-snug text-gray-900 group-hover:underline group-hover:decoration-3 group-hover:decoration-rose-500 group-hover:underline-offset-2"> How is sensitive data handled? </h3> <span class="shrink-0 size-6 rounded-full flex items-center justify-center transition-colors bg-secondary-200 text-purple-900 group-hover:bg-rose-500 group-hover:text-white [.faq-open_&]:bg-rose-500 [.faq-open_&]:text-white"> <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-3 transition-transform duration-300 group-hover:rotate-45 [.faq-open_&#38;]:rotate-45" data-icon="ph:plus-bold">   <use href="#ai:ph:plus-bold"></use>  </svg> </span> </button> <div class="faq-body grid grid-rows-[0fr] group-hover:grid-rows-[1fr] [.faq-open_&]:grid-rows-[1fr] transition-all duration-300"> <div class="overflow-hidden"> <h3 class="text-sm text-gray-500 leading-relaxed mt-3 pr-12">Personal data is hashed before being sent to ad platforms. Journify follows platform requirements, regulatory standards, and security practices throughout.</h3>  </div> </div> </div> </div> 
384<script type="module">window.matchMedia("(hover: none)").matches&&document.querySelectorAll(".faq-item").forEach(e=>{const t=e.querySelector(".faq-trigger");e.dataset.defaultOpen==="true"&&(e.classList.add("faq-open"),t.setAttribute("aria-expanded","true")),t.addEventListener("click",()=>{const a=e.classList.toggle("faq-open");t.setAttribute("aria-expanded",a?"true":"false")})});</script>
384 </div> </section>  </div> </section> <section class="w-full" style="clip-path: inset(-100px 0 0 0)"> <div class="bg-[#521459]"> <div class="max-w-6xl mx-auto px-4 md:px-0">  <section class="relative"> <div class="flex flex-col md:flex-row items-stretch"> <div class="relative md:w-2/6 shrink-0 overflow-hidden"> <img src="/_astro/home_page_footer_billboard.CPQEgTB__Zl9kNI.webp" alt="Journify" loading="lazy" decoding="async" fetchpriority="auto" width="1600" height="1548" class="absolute inset-0 w-full h-full object-contain object-center"> </div> <div class="flex flex-col justify-center md:px-16 py-20 flex-1"> <p class="text-white text-3xl leading-snug mb-4">
385Your tracking is probably missing conversions.
386</p> <h2 class="font-syne text-white text-3xl md:text-6xl mb-6 font-extrabold"><span class="text-brand">See if signal loss</span>
387              <span>is limiting your performance.</span></h2> <p class="text-white mb-8 max-w-lg"> We review how your conversion data reaches ad platforms and identify exactly what platforms are receiving and what they are missing.
388mean for your ROAS.
389</p> <a href="/book-a-call/" class="font-syne cursor-pointer inline-flex items-center gap-2 text-center rounded-lg font-semibold transition-colors bg-brand text-white hover:bg-primary-700 text-lg px-8 py-4 justify-center">Book a call <svg width="1em" height="1em" viewBox="0 0 256 256" class="size-4" data-icon="ph:arrow-right">   <use href="#ai:ph:arrow-right"></use>  </svg></a> <ul class="flex flex-wrap items-center justify-center gap-6 mt-5"> <li class="flex items-center gap-2 text-sm text-white/70 whitespace-nowrap"> <span class="w-2 h-2 rounded-full bg-rose-500 shrink-0"></span> Free audit </li><li class="flex items-center gap-2 text-sm text-white/70 whitespace-nowrap"> <span class="w-2 h-2 rounded-full bg-rose-500 shrink-0"></span> No commitment </li><li class="flex items-center gap-2 text-sm text-white/70 whitespace-nowrap"> <span class="w-2 h-2 rounded-full bg-rose-500 shrink-0"></span> Live in under a week </li> </ul> </div> </div> </section>  </div> </div> </section>  <section class="w-full"> <div class="bg-[#1F082C]"> <div class="max-w-6xl mx-auto"> <footer> <div class="max-w-6xl mx-auto px-4 md:px-0">  <div class="py-16 grid grid-cols-2 md:grid-cols-5 gap-12 print:hidden"> <div class="flex flex-col col-span-2"> <a href="/" class="flex items-center"> <svg width="50" height="51" viewBox="0 0 50 51" fill="none" class="w-8 h-8">
390<g filter="url(#filter0_dd_4984_265813)">
391<path fill-rule="evenodd" clip-rule="evenodd" d="M20.93 25.94L20.05 26.45C19.27 26.9 18.82 27.68 18.82 28.59C18.82 29.5 19.27 30.27 20.05 30.73L31.09 37.1C31.87 37.55 32.77 37.55 33.56 37.1C34.34 36.65 34.79 35.87 34.79 34.96V15.23C34.79 14.37 35.49 13.66 36.36 13.66C37.23 13.66 37.93 14.36 37.93 15.23V36.57C37.93 37.37 38.27 38.06 38.91 38.54C39.07 38.66 39.22 38.79 39.36 38.93C40.13 39.7 40.6 40.76 40.6 41.93C40.6 43.1 40.13 44.16 39.36 44.93C38.59 45.7 37.53 46.17 36.36 46.17C35.19 46.17 34.13 45.7 33.37 44.93C32.72 44.28 32.28 43.41 32.16 42.45C32.06 41.65 31.64 41.01 30.94 40.61L17.1 32.62C16.41 32.22 15.64 32.17 14.9 32.49C14.39 32.71 13.83 32.83 13.24 32.83C12.07 32.83 11.01 32.36 10.24 31.59C9.47 30.82 9 29.76 9 28.59C9 27.42 9.47 26.36 10.24 25.59C11.01 24.82 12.07 24.35 13.24 24.35C13.83 24.35 14.39 24.47 14.9 24.69C15.64 25 16.41 24.96 17.1 24.56L19.38 23.25C20.07 22.85 20.5 22.21 20.6 21.41C20.72 20.45 21.16 19.58 21.81 18.93C22.58 18.16 23.64 17.69 24.81 17.69C25.98 17.69 27.04 18.17 27.8 18.93C28.56 19.69 29.04 20.76 29.04 21.93C29.04 23.1 28.57 24.16 27.8 24.93C27.03 25.7 25.97 26.17 24.81 26.17C24.22 26.17 23.66 26.05 23.15 25.83C22.41 25.52 21.64 25.56 20.95 25.96L20.93 25.94ZM33.36 3.24C34.13 2.47 35.19 2 36.35 2C37.51 2 38.58 2.48 39.35 3.24C40.12 4.01 40.59 5.07 40.59 6.24C40.59 7.41 40.12 8.47 39.35 9.23C38.58 9.99 37.52 10.47 36.35 10.47C35.18 10.47 34.12 10 33.36 9.23C32.59 8.46 32.12 7.4 32.12 6.24C32.12 5.08 32.59 4.01 33.36 3.24Z" fill="url(#paint0_linear_4984_265813)" />
392</g>
393<defs>
394<filter id="filter0_dd_4984_265813" x="0" y="0" width="50" height="50.1699" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
395<feFlood flood-opacity="0" result="BackgroundImageFix" />
396<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" />
397<feOffset dy="1" />
398<feGaussianBlur stdDeviation="1" />
399<feColorMatrix type="matrix" values="0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.06 0" />
400<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_4984_265813" />
401<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" />
402<feOffset dy="1" />
403<feGaussianBlur stdDeviation="1.5" />
404<feColorMatrix type="matrix" values="0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.1 0" />
405<feBlend mode="normal" in2="effect1_dropShadow_4984_265813" result="effect2_dropShadow_4984_265813" />
406<feBlend mode="normal" in="SourceGraphic" in2="effect2_dropShadow_4984_265813" result="shape" />
407</filter>
408<linearGradient id="paint0_linear_4984_265813" x1="78.3114" y1="46" x2="83.9805" y2="-3.73029" gradientUnits="userSpaceOnUse">
409<stop stop-color="#F81566" />
410<stop offset="1" stop-color="#F81566" />
411</linearGradient>
412</defs>
413</svg> <span class="text-sm text-white tracking-tight font-bold-760 font-syne">Journify</span> </a> <p class="mt-2 text-sm text-white/30 leading-relaxed max-w-xs">
414Ad signal infrastructure for brands that run on performance.
415</p> <div class="mt-6 flex items-center gap-5 p-1"> <img src="/images/soc/soc2-light-2x.png" loading="lazy" alt="SOC 2" class="size-18"><img src="/images/soc/soc2.png" loading="lazy" alt="SOC" class="size-18"><img src="/images/soc/gdpr.png" loading="lazy" alt="GDPR" class="size-18"> </div> <div class="mt-6 flex items-center gap-2"> 
415<script type="module">document.addEventListener("click",n=>{const e=n.target.closest(".urlencode");if(!e)return;const t=e.dataset.urlencode;if(!t)return;const o=decodeURIComponent(atob(t));window.open(o,"_blank")});</script>
415 <div class="urlencode cursor-pointer w-8 h-8 rounded-lg border border-white/20 bg-white/10 flex items-center justify-center text-white hover:text-white transition-colors" data-urlencode="aHR0cHMlM0ElMkYlMkZ3d3cubGlua2VkaW4uY29tJTJGY29tcGFueSUyRmpvdXJuaWZ5aW8=">  <svg width="1em" height="1em" class="size-4" data-icon="ph:linkedin-logo">   <symbol id="ai:ph:linkedin-logo" viewBox="0 0 256 256"><path fill="currentColor" d="M216 24H40a16 16 0 0 0-16 16v176a16 16 0 0 0 16 16h176a16 16 0 0 0 16-16V40a16 16 0 0 0-16-16m0 192H40V40h176zM96 112v64a8 8 0 0 1-16 0v-64a8 8 0 0 1 16 0m88 28v36a8 8 0 0 1-16 0v-36a20 20 0 0 0-40 0v36a8 8 0 0 1-16 0v-64a8 8 0 0 1 15.79-1.78A36 36 0 0 1 184 140m-84-56a12 12 0 1 1-12-12a12 12 0 0 1 12 12"/></symbol><use href="#ai:ph:linkedin-logo"></use>  </svg>  </div> </div> </div> <div class="flex flex-col gap-4"> <p class="text-1xs font-light tracking-widest uppercase text-white/30">Product</p> <ul class="flex flex-col gap-3"> <li> <a href="/product/" class="text-sm text-white hover:text-white transition-colors"> Product </a> </li><li> <a href="/insights/" class="text-sm text-white hover:text-white transition-colors"> Insights </a> </li><li> <a href="/integrations/" class="text-sm text-white hover:text-white transition-colors"> Integrations </a> </li><li> <a href="/resources/" class="text-sm text-white hover:text-white transition-colors">
415 Resources </a> </li> </ul> </div><div class="flex flex-col gap-4"> <p class="text-1xs font-light tracking-widest uppercase text-white/30">Company</p> <ul class="flex flex-col gap-3"> <li> <a href="/about/" class="text-sm text-white hover:text-white transition-colors"> About us </a> </li><li> <a href="/careers/" class="text-sm text-white hover:text-white transition-colors"> Careers </a> </li><li> <a href="/customers/" class="text-sm text-white hover:text-white transition-colors"> Customers </a> </li><li> <a href="/partner-with-journify/" class="text-sm text-white hover:text-white transition-colors"> Partner with us </a> </li> </ul> </div><div class="flex flex-col gap-4"> <p class="text-1xs font-light tracking-widest uppercase text-white/30">Legal</p> <ul class="flex flex-col gap-3"> <li> <a href="/privacy-policy/" class="text-sm text-white hover:text-white transition-colors"> Privacy Policy </a> </li><li> <a href="/cookie-policy/" class="text-sm text-white hover:text-white transition-colors"> Cookie Policy </a> </li><li> <a href="/terms/" class="text-sm text-white hover:text-white transition-colors"> Terms of Service </a> </li><li> <a href="/dpa/" class="text-sm text-white hover:text-white transition-colors"> Data Processing Addendum </a> </li> </ul> </div> </div>  </div> <div class="print:hidden border-t border-white/10 py-5 flex flex-col md:flex-row items-center justify-between text-white/30"> <p class="text-xs font-mono">© 2026 Journify. All rights reserved.</p> <nav class="flex items-center gap-6"> <a href="/privacy-policy/" class="text-xs  hover:text-white transition-colors"> Privacy Policy </a><a href="/cookie-policy/" class="text-xs  hover:text-white transition-colors"> Cookie Policy </a><a href="/terms/" class="text-xs  hover:text-white transition-colors"> Terms of Service </a> </nav> </div> </footer> </div> </div> </section> 
415<script>
416  (function () {
417    var w = window;
418    var ic = w.Intercom;
419    if (typeof ic === 'function') {
420      ic('reattach_activator');
421      ic('update', w.intercomSettings);
422    } else {
423      var d = document;
424      var i = function () {
425        i.c(arguments);
426      };
427      i.q = [];
428      i.c = function (args) {
429        i.q.push(args);
430      };
431      w.Intercom = i;
432      var l = function () {
433        var s = d.createElement('script');
434        s.type = 'text/javascript';
435        s.async = true;
436        s.src = 'https://widget.intercom.io/widget/j961w016';
437        var x = d.getElementsByTagName('script')[0];
438        x.parentNode.insertBefore(s, x);
439      };
440      if (document.readyState === 'complete') {
441        l();
442      } else if (w.attachEvent) {
443        w.attachEvent('onload', l);
444      } else {
445        w.addEventListener('load', l, false);
446      }
447    }
448  })();
449</script>
449 </body></html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.