[{"data":1,"prerenderedAt":1111},["ShallowReactive",2],{"docs-navigation":3,"docs:\u002Fdocs\u002Fdata-capture\u002Fshopify-checkout":505,"docs-area:\u002Fdocs\u002Fdata-capture":1106,"docs-surround:\u002Fdocs\u002Fdata-capture\u002Fshopify-checkout":1108},[4],{"title":5,"path":6,"stem":7,"children":8,"page":504},"Docs","\u002Fdocs","docs",[9,58,123,349,363,377,391,418,467,489],{"title":10,"path":11,"stem":12,"children":13,"icon":52,"summary":53,"section":18,"highlights":54},"Get started","\u002Fdocs\u002Fget-started","docs\u002F01.get-started\u002Findex",[14,21,26,31,37,42,47],{"title":15,"path":16,"stem":17,"icon":18,"summary":19,"section":20,"highlights":18,"children":-1},"Quickstart","\u002Fdocs\u002Fget-started\u002Fquickstart","docs\u002F01.get-started\u002F01.quickstart",null,"Create a property, add the tag to your site and see your first visits in Analytics.","Start here",{"title":22,"path":23,"stem":24,"icon":18,"summary":25,"section":20,"highlights":18,"children":-1},"Set up your organisation","\u002Fdocs\u002Fget-started\u002Fset-up-your-organisation","docs\u002F01.get-started\u002F02.set-up-your-organisation","Sign in, turn on two-step verification, choose where data is stored and invite your team.",{"title":27,"path":28,"stem":29,"icon":18,"summary":30,"section":20,"highlights":18,"children":-1},"Core concepts","\u002Fdocs\u002Fget-started\u002Fcore-concepts","docs\u002F01.get-started\u002F03.core-concepts","Organisations, properties, events, visits, page and click types, and how Publish reaches Analytics.",{"title":32,"path":33,"stem":34,"icon":18,"summary":35,"section":36,"highlights":18,"children":-1},"Guide for marketers","\u002Fdocs\u002Fget-started\u002Ffor-marketers","docs\u002F01.get-started\u002F04.for-marketers","Read the dashboards, explore your own questions and see where visitors struggle.","Guides by role",{"title":38,"path":39,"stem":40,"icon":18,"summary":41,"section":36,"highlights":18,"children":-1},"Guide for engineers","\u002Fdocs\u002Fget-started\u002Ffor-engineers","docs\u002F01.get-started\u002F05.for-engineers","Install the tag, set up consent and identify, and keep capture safe on your pages.",{"title":43,"path":44,"stem":45,"icon":18,"summary":46,"section":36,"highlights":18,"children":-1},"Guide for data teams","\u002Fdocs\u002Fget-started\u002Ffor-data-teams","docs\u002F01.get-started\u002F06.for-data-teams","Map your data layer to standard fields, publish, and build on the explores.",{"title":48,"path":49,"stem":50,"icon":18,"summary":51,"section":36,"highlights":18,"children":-1},"Guide for ecommerce teams","\u002Fdocs\u002Fget-started\u002Ffor-ecommerce-teams","docs\u002F01.get-started\u002F07.for-ecommerce-teams","Carts, checkouts, orders, revenue and attribution for your store.","i-lucide-rocket","Set up your organisation, add the tag and see your first visits in Analytics.",[55,56,57],{"title":15,"to":16},{"title":22,"to":23},{"title":27,"to":28},{"title":59,"path":60,"stem":61,"children":62,"icon":116,"summary":117,"section":18,"highlights":118},"Data Capture","\u002Fdocs\u002Fdata-capture","docs\u002F02.data-capture\u002Findex",[63,69,74,79,84,90,95,100,105,111],{"title":64,"path":65,"stem":66,"icon":18,"summary":67,"section":68,"highlights":18,"children":-1},"Install the website tag","\u002Fdocs\u002Fdata-capture\u002Finstall-the-website-tag","docs\u002F02.data-capture\u002F01.install-the-website-tag","Add the install snippet to every page, allow it in your CSP, and check that it works.","Set up",{"title":70,"path":71,"stem":72,"icon":18,"summary":73,"section":68,"highlights":18,"children":-1},"Turn capture features on","\u002Fdocs\u002Fdata-capture\u002Fturn-features-on","docs\u002F02.data-capture\u002F02.turn-features-on","What each capture card on a property does, and which are on from the start.",{"title":75,"path":76,"stem":77,"icon":18,"summary":78,"section":68,"highlights":18,"children":-1},"Existing tags and data layers","\u002Fdocs\u002Fdata-capture\u002Fexisting-tags-and-data-layers","docs\u002F02.data-capture\u002F03.existing-tags-and-data-layers","Read your tag manager data layer and the analytics tools you already run, without re-tagging.",{"title":80,"path":81,"stem":82,"icon":18,"summary":83,"section":68,"highlights":18,"children":-1},"Shopify checkout","\u002Fdocs\u002Fdata-capture\u002Fshopify-checkout","docs\u002F02.data-capture\u002F04.shopify-checkout","Count a Shopify store's carts, checkouts and orders, line by line, with Markalit's pixel.",{"title":85,"path":86,"stem":87,"icon":18,"summary":88,"section":89,"highlights":18,"children":-1},"Page and click types","\u002Fdocs\u002Fdata-capture\u002Fpage-and-click-types","docs\u002F02.data-capture\u002F05.page-and-click-types","The 11 page types and 30 click types, and how Markalit decides each one.","What gets captured",{"title":91,"path":92,"stem":93,"icon":18,"summary":94,"section":89,"highlights":18,"children":-1},"Struggle signals","\u002Fdocs\u002Fdata-capture\u002Fstruggle-signals","docs\u002F02.data-capture\u002F06.struggle-signals","Rage clicks, dead clicks, errors, page speed and quick backs, and how each is detected.",{"title":96,"path":97,"stem":98,"icon":18,"summary":99,"section":89,"highlights":18,"children":-1},"Revenue and campaigns","\u002Fdocs\u002Fdata-capture\u002Frevenue-and-campaigns","docs\u002F02.data-capture\u002F07.revenue-and-campaigns","Orders and revenue, the campaign parameters Markalit keeps, channels, attribution and ad spend.",{"title":101,"path":102,"stem":103,"icon":18,"summary":104,"section":89,"highlights":18,"children":-1},"Identify visitors","\u002Fdocs\u002Fdata-capture\u002Fidentify-visitors","docs\u002F02.data-capture\u002F08.identify-visitors","Tell Markalit who signed in, and how visits and visitors are counted.",{"title":106,"path":107,"stem":108,"icon":18,"summary":109,"section":110,"highlights":18,"children":-1},"Consent","\u002Fdocs\u002Fdata-capture\u002Fconsent","docs\u002F02.data-capture\u002F09.consent","How the tag behaves before and after a visitor answers your consent banner, and how to wire it up.","Privacy and control",{"title":112,"path":113,"stem":114,"icon":18,"summary":115,"section":110,"highlights":18,"children":-1},"Privacy and governance","\u002Fdocs\u002Fdata-capture\u002Fprivacy-and-governance","docs\u002F02.data-capture\u002F10.privacy-and-governance","What is kept and what is removed, page URLs, cookies, IP addresses, bots and how to leave parts of a page out.","i-lucide-mouse-pointer-click","One line of code captures page views, clicks, scrolling and struggle, classified in business terms.",[119,120,121,122],{"title":64,"to":65},{"title":70,"to":71},{"title":85,"to":86},{"title":106,"to":107},{"title":124,"path":125,"stem":126,"children":127,"icon":342,"summary":343,"section":18,"highlights":344},"Analytics","\u002Fdocs\u002Fanalytics","docs\u002F03.analytics\u002Findex",[128,134,139,145,150,155,160,165,171,176,182,187,193,198,203,208,213,218,223,228,233,238,243,248,253,258,263,268,273,278,283,288,293,299,304,309,314,318,323,328,333,338],{"title":129,"path":130,"stem":131,"icon":18,"summary":132,"section":133,"highlights":18,"children":-1},"Dashboards","\u002Fdocs\u002Fanalytics\u002Fdashboards","docs\u002F03.analytics\u002F01.dashboards","Open Markalit Analytics and find your way around the ready-made dashboards Markalit builds for you.","Get around",{"title":135,"path":136,"stem":137,"icon":18,"summary":138,"section":133,"highlights":18,"children":-1},"Explores, metrics and the semantic layer","\u002Fdocs\u002Fanalytics\u002Fsemantic-layer","docs\u002F03.analytics\u002F02.semantic-layer","The 21 explores Markalit maintains, what is in them, and how your Data Capture settings shape them.",{"title":140,"path":141,"stem":142,"icon":18,"summary":143,"section":144,"highlights":18,"children":-1},"How explores, dimensions and metrics work","\u002Fdocs\u002Fanalytics\u002Fexplores-dimensions-and-metrics","docs\u002F03.analytics\u002F03.explores-dimensions-and-metrics","Where a question starts, what you group it by, and what you measure.","Concepts",{"title":146,"path":147,"stem":148,"icon":18,"summary":149,"section":144,"highlights":18,"children":-1},"Explores","\u002Fdocs\u002Fanalytics\u002Fexplores","docs\u002F03.analytics\u002F04.explores","Open an explore, pick dimensions and metrics, then filter, sort and run your query.",{"title":151,"path":152,"stem":153,"icon":18,"summary":154,"section":144,"highlights":18,"children":-1},"Dimensions","\u002Fdocs\u002Fanalytics\u002Fdimensions","docs\u002F03.analytics\u002F05.dimensions","What you group and filter by: dimension types, dates and time intervals, filters and bins.",{"title":156,"path":157,"stem":158,"icon":18,"summary":159,"section":144,"highlights":18,"children":-1},"Metrics","\u002Fdocs\u002Fanalytics\u002Fmetrics","docs\u002F03.analytics\u002F06.metrics","What you measure: metric types, custom metrics, table calculations and the Metrics Catalog.",{"title":161,"path":162,"stem":163,"icon":18,"summary":164,"section":144,"highlights":18,"children":-1},"Attribution modelling","\u002Fdocs\u002Fanalytics\u002Fattribution-modelling","docs\u002F03.analytics\u002F07.attribution-modelling","How conversions are credited to channels and campaigns: journeys, touchpoints, the three models and the switches.",{"title":166,"path":167,"stem":168,"icon":18,"summary":169,"section":170,"highlights":18,"children":-1},"Explore and visualise","\u002Fdocs\u002Fanalytics\u002Fexplore-and-visualise","docs\u002F03.analytics\u002F08.explore-and-visualise","Build your own charts from the explores: filters, table calculations, custom fields and chart types.","Analyse",{"title":172,"path":173,"stem":174,"icon":18,"summary":175,"section":170,"highlights":18,"children":-1},"Ask AI and agents","\u002Fdocs\u002Fanalytics\u002Fask-ai-and-agents","docs\u002F03.analytics\u002F09.ask-ai-and-agents","AI assistants are not yet available in Markalit Analytics.",{"title":177,"path":178,"stem":179,"icon":18,"summary":180,"section":181,"highlights":18,"children":-1},"Share and export","\u002Fdocs\u002Fanalytics\u002Fshare-and-export","docs\u002F03.analytics\u002F10.share-and-export","Share links, comment on dashboards, export results and duplicate dashboards.","Share and govern",{"title":183,"path":184,"stem":185,"icon":18,"summary":186,"section":181,"highlights":18,"children":-1},"Security and governance","\u002Fdocs\u002Fanalytics\u002Fsecurity-and-governance","docs\u002F03.analytics\u002F11.security-and-governance","How you sign in to Analytics, what each role can do, and how your data is kept apart.",{"title":188,"path":189,"stem":190,"icon":18,"summary":191,"section":192,"highlights":18,"children":-1},"Page views","\u002Fdocs\u002Fanalytics\u002Fpage-views","docs\u002F03.analytics\u002F12.page-views","Every page view, with its page, page type, visit, location, device, scroll depth and speed.","Explore reference",{"title":194,"path":195,"stem":196,"icon":18,"summary":197,"section":192,"highlights":18,"children":-1},"Visits","\u002Fdocs\u002Fanalytics\u002Fvisits","docs\u002F03.analytics\u002F13.visits","Every visit, as it arrived: channel, landing page, conversions and revenue.",{"title":199,"path":200,"stem":201,"icon":18,"summary":202,"section":192,"highlights":18,"children":-1},"Clicks","\u002Fdocs\u002Fanalytics\u002Fclicks","docs\u002F03.analytics\u002F14.clicks","Every click on a link, button or control, and every form sent, with its click type.",{"title":204,"path":205,"stem":206,"icon":18,"summary":207,"section":192,"highlights":18,"children":-1},"Swipes","\u002Fdocs\u002Fanalytics\u002Fswipes","docs\u002F03.analytics\u002F15.swipes","Every sideways swipe, such as through a carousel or gallery.",{"title":209,"path":210,"stem":211,"icon":18,"summary":212,"section":192,"highlights":18,"children":-1},"Friction","\u002Fdocs\u002Fanalytics\u002Ffriction","docs\u002F03.analytics\u002F16.friction","Every JavaScript error, rage click, dead click and quick back, and where it happened.",{"title":214,"path":215,"stem":216,"icon":18,"summary":217,"section":192,"highlights":18,"children":-1},"Checkout","\u002Fdocs\u002Fanalytics\u002Fcheckout","docs\u002F03.analytics\u002F17.checkout","Every Shopify checkout opened, step submitted and order paid.",{"title":219,"path":220,"stem":221,"icon":18,"summary":222,"section":192,"highlights":18,"children":-1},"Carts","\u002Fdocs\u002Fanalytics\u002Fcarts","docs\u002F03.analytics\u002F18.carts","Every visit with a cart, and whether it was bought, abandoned or recovered later.",{"title":224,"path":225,"stem":226,"icon":18,"summary":227,"section":192,"highlights":18,"children":-1},"Items","\u002Fdocs\u002Fanalytics\u002Fitems","docs\u002F03.analytics\u002F19.items","Every item of every product list, cart, checkout and order.",{"title":229,"path":230,"stem":231,"icon":18,"summary":232,"section":192,"highlights":18,"children":-1},"Products","\u002Fdocs\u002Fanalytics\u002Fproducts","docs\u002F03.analytics\u002F20.products","Every product listed, viewed, added to a cart, bought or refunded.",{"title":234,"path":235,"stem":236,"icon":18,"summary":237,"section":192,"highlights":18,"children":-1},"Data layer events","\u002Fdocs\u002Fanalytics\u002Fdata-layer-events","docs\u002F03.analytics\u002F21.data-layer-events","Every event your site pushes to its data layer, with your own fields.",{"title":239,"path":240,"stem":241,"icon":18,"summary":242,"section":192,"highlights":18,"children":-1},"Campaigns","\u002Fdocs\u002Fanalytics\u002Fcampaigns","docs\u002F03.analytics\u002F22.campaigns","Each day of each campaign: visits, credited conversions, ad spend, cost per conversion and ROAS.",{"title":244,"path":245,"stem":246,"icon":18,"summary":247,"section":192,"highlights":18,"children":-1},"Campaign trends","\u002Fdocs\u002Fanalytics\u002Fcampaign-trends","docs\u002F03.analytics\u002F23.campaign-trends","Spend, cost per visit, cost per conversion and ROAS, against earlier weeks and the usual.",{"title":249,"path":250,"stem":251,"icon":18,"summary":252,"section":192,"highlights":18,"children":-1},"Attribution","\u002Fdocs\u002Fanalytics\u002Fattribution","docs\u002F03.analytics\u002F24.attribution","Every touchpoint of every conversion's 90-day journey, with each model's credit.",{"title":254,"path":255,"stem":256,"icon":18,"summary":257,"section":192,"highlights":18,"children":-1},"Cohorts","\u002Fdocs\u002Fanalytics\u002Fcohorts","docs\u002F03.analytics\u002F25.cohorts","Each new visitor in each week and month after their first visit: return rates and value.",{"title":259,"path":260,"stem":261,"icon":18,"summary":262,"section":192,"highlights":18,"children":-1},"Activity","\u002Fdocs\u002Fanalytics\u002Factivity","docs\u002F03.analytics\u002F26.activity","Active visitors by day, week and month, with growth accounting and stickiness.",{"title":264,"path":265,"stem":266,"icon":18,"summary":267,"section":192,"highlights":18,"children":-1},"Activation","\u002Fdocs\u002Fanalytics\u002Factivation","docs\u002F03.analytics\u002F27.activation","Each sign-up beside each key action: how many reach it, how fast, and whether they stay.",{"title":269,"path":270,"stem":271,"icon":18,"summary":272,"section":192,"highlights":18,"children":-1},"Feature usage","\u002Fdocs\u002Fanalytics\u002Ffeature-usage","docs\u002F03.analytics\u002F28.feature-usage","Which features active visitors use, how often, and who adopts them.",{"title":274,"path":275,"stem":276,"icon":18,"summary":277,"section":192,"highlights":18,"children":-1},"First visits","\u002Fdocs\u002Fanalytics\u002Ffirst-visits","docs\u002F03.analytics\u002F29.first-visits","Which first-visit features go with new visitors coming back.",{"title":279,"path":280,"stem":281,"icon":18,"summary":282,"section":192,"highlights":18,"children":-1},"First-visit paths","\u002Fdocs\u002Fanalytics\u002Ffirst-visit-paths","docs\u002F03.analytics\u002F30.first-visit-paths","The paths new visitors take on their first visit, and whether they came back.",{"title":284,"path":285,"stem":286,"icon":18,"summary":287,"section":192,"highlights":18,"children":-1},"Trends","\u002Fdocs\u002Fanalytics\u002Ftrends","docs\u002F03.analytics\u002F31.trends","Every visit KPI against last week, last year, the usual and an expected range.",{"title":289,"path":290,"stem":291,"icon":18,"summary":292,"section":192,"highlights":18,"children":-1},"Movers","\u002Fdocs\u002Fanalytics\u002Fmovers","docs\u002F03.analytics\u002F32.movers","What moved: each channel, landing page or device against last week and the usual.",{"title":294,"path":295,"stem":296,"icon":18,"summary":297,"section":298,"highlights":18,"children":-1},"Overview","\u002Fdocs\u002Fanalytics\u002Foverview-dashboard","docs\u002F03.analytics\u002F33.overview-dashboard","Traffic, active users and top content at a glance: the place to start.","Dashboard reference",{"title":300,"path":301,"stem":302,"icon":18,"summary":303,"section":298,"highlights":18,"children":-1},"Acquisition","\u002Fdocs\u002Fanalytics\u002Facquisition-dashboard","docs\u002F03.analytics\u002F34.acquisition-dashboard","Where people come from, what the ads cost and returned, and where each channel lands them.",{"title":305,"path":306,"stem":307,"icon":18,"summary":308,"section":298,"highlights":18,"children":-1},"Engagement","\u002Fdocs\u002Fanalytics\u002Fengagement-dashboard","docs\u002F03.analytics\u002F35.engagement-dashboard","How visits engage, the pages read and left, the clicks and forms acted on, and who comes back.",{"title":310,"path":311,"stem":312,"icon":18,"summary":313,"section":298,"highlights":18,"children":-1},"Conversion","\u002Fdocs\u002Fanalytics\u002Fconversion-dashboard","docs\u002F03.analytics\u002F36.conversion-dashboard","Whether visits convert, where the funnels lose them and how long a first conversion takes.",{"title":249,"path":315,"stem":316,"icon":18,"summary":317,"section":298,"highlights":18,"children":-1},"\u002Fdocs\u002Fanalytics\u002Fattribution-dashboard","docs\u002F03.analytics\u002F37.attribution-dashboard","Which channel gets credit for a conversion under first touch, linear and last touch, and the paths journeys take.",{"title":319,"path":320,"stem":321,"icon":18,"summary":322,"section":298,"highlights":18,"children":-1},"Retention and cohorts","\u002Fdocs\u002Fanalytics\u002Fretention-dashboard","docs\u002F03.analytics\u002F38.retention-dashboard","Whether new visitors come back, sign-ups activate and the audience grows, and what a new visitor is worth.",{"title":324,"path":325,"stem":326,"icon":18,"summary":327,"section":298,"highlights":18,"children":-1},"Audience","\u002Fdocs\u002Fanalytics\u002Faudience-dashboard","docs\u002F03.analytics\u002F39.audience-dashboard","Who your visitors are: where, on what, how often, and whether you know them.",{"title":329,"path":330,"stem":331,"icon":18,"summary":332,"section":298,"highlights":18,"children":-1},"Product and app usage","\u002Fdocs\u002Fanalytics\u002Fproduct-usage-dashboard","docs\u002F03.analytics\u002F40.product-usage-dashboard","Which features people use, which first visits lead to coming back, where they struggle and which pages are slow.",{"title":334,"path":335,"stem":336,"icon":18,"summary":337,"section":298,"highlights":18,"children":-1},"Trend and anomaly","\u002Fdocs\u002Fanalytics\u002Ftrends-dashboard","docs\u002F03.analytics\u002F41.trends-dashboard","What changed, whether it is unusual, what drove it, and what moved around a release or launch.",{"title":229,"path":339,"stem":340,"icon":18,"summary":341,"section":298,"highlights":18,"children":-1},"\u002Fdocs\u002Fanalytics\u002Fproducts-dashboard","docs\u002F03.analytics\u002F42.products-dashboard","Which products sell, and where shoppers drop off between viewing and buying.","i-lucide-chart-line","Ready-made dashboards and 21 explores over your events, on a semantic layer Markalit maintains.",[345,346,347,348],{"title":129,"to":130},{"title":135,"to":136},{"title":140,"to":141},{"title":166,"to":167},{"title":350,"path":351,"stem":352,"children":353,"icon":359,"summary":360,"section":18,"highlights":361},"CDP","\u002Fdocs\u002Fcdp","docs\u002F04.cdp\u002Findex",[354],{"title":355,"path":356,"stem":357,"icon":18,"summary":358,"section":294,"highlights":18,"children":-1},"CDP overview","\u002Fdocs\u002Fcdp\u002Foverview","docs\u002F04.cdp\u002F01.overview","Identity resolution, consent, real-time audiences and warehouse-native sync.","i-lucide-users","One resolved, consented profile that every module reads and writes.",[362],{"title":355,"to":356},{"title":364,"path":365,"stem":366,"children":367,"icon":373,"summary":374,"section":18,"highlights":375},"Personalisation","\u002Fdocs\u002Fpersonalisation","docs\u002F05.personalisation\u002Findex",[368],{"title":369,"path":370,"stem":371,"icon":18,"summary":372,"section":294,"highlights":18,"children":-1},"Personalisation overview","\u002Fdocs\u002Fpersonalisation\u002Foverview","docs\u002F05.personalisation\u002F01.overview","Next best action, decisioning, bandits, recommendations and journey experiments.","i-lucide-sparkles","The next best content, offer and channel for each person.",[376],{"title":369,"to":370},{"title":378,"path":379,"stem":380,"children":381,"icon":387,"summary":388,"section":18,"highlights":389},"CVM","\u002Fdocs\u002Fcvm","docs\u002F06.cvm\u002Findex",[382],{"title":383,"path":384,"stem":385,"icon":18,"summary":386,"section":294,"highlights":18,"children":-1},"CVM overview","\u002Fdocs\u002Fcvm\u002Foverview","docs\u002F06.cvm\u002F01.overview","Churn and lifetime value prediction, lifecycle orchestration and offer guardrails.","i-lucide-trending-up","Lifecycle value, optimised for margin rather than vanity metrics.",[390],{"title":383,"to":384},{"title":392,"path":393,"stem":394,"children":395,"icon":412,"summary":413,"section":18,"highlights":414},"Autonomy","\u002Fdocs\u002Fautonomy","docs\u002F07.autonomy\u002Findex",[396,402,407],{"title":397,"path":398,"stem":399,"icon":18,"summary":400,"section":401,"highlights":18,"children":-1},"Goals and guardrails","\u002Fdocs\u002Fautonomy\u002Fgoals-and-guardrails","docs\u002F07.autonomy\u002F01.goals-and-guardrails","Optimise for value, within limits the models cannot cross.","Control",{"title":403,"path":404,"stem":405,"icon":18,"summary":406,"section":401,"highlights":18,"children":-1},"Autonomy levels","\u002Fdocs\u002Fautonomy\u002Fautonomy-levels","docs\u002F07.autonomy\u002F02.autonomy-levels","Approve, suggest-only or fully autonomous, set per journey.",{"title":408,"path":409,"stem":410,"icon":18,"summary":411,"section":401,"highlights":18,"children":-1},"Explainability","\u002Fdocs\u002Fautonomy\u002Fexplainability","docs\u002F07.autonomy\u002F03.explainability","Every action is logged with the signals and reasoning behind it.","i-lucide-shield-check","Goals, guardrails and approval levels: you decide how much runs on its own.",[415,416,417],{"title":397,"to":398},{"title":403,"to":404},{"title":408,"to":409},{"title":419,"path":420,"stem":421,"children":422,"icon":461,"summary":462,"section":18,"highlights":463},"Developers","\u002Fdocs\u002Fdevelopers","docs\u002F08.developers\u002Findex",[423,429,435,440,445,450,455],{"title":424,"path":425,"stem":426,"icon":18,"summary":427,"section":428,"highlights":18,"children":-1},"Tag reference","\u002Fdocs\u002Fdevelopers\u002Ftag-reference","docs\u002F08.developers\u002F01.tag-reference","Every script attribute, JavaScript function, HTML attribute and cookie of Markalit's website tag.","Website",{"title":430,"path":431,"stem":432,"icon":18,"summary":433,"section":434,"highlights":18,"children":-1},"App SDKs","\u002Fdocs\u002Fdevelopers\u002Fsdks","docs\u002F08.developers\u002F02.sdks","Which app SDKs are available, and where to find each one's installation guide.","Apps and servers",{"title":436,"path":437,"stem":438,"icon":18,"summary":439,"section":434,"highlights":18,"children":-1},"Flutter SDK","\u002Fdocs\u002Fdevelopers\u002Fflutter-sdk","docs\u002F08.developers\u002F03.flutter-sdk","Install kontala_flutter, start it in main(), and check that events arrive.",{"title":441,"path":442,"stem":443,"icon":18,"summary":444,"section":434,"highlights":18,"children":-1},"Android SDK","\u002Fdocs\u002Fdevelopers\u002Fandroid-sdk","docs\u002F08.developers\u002F04.android-sdk","Add la.konta:kontala-android, start it in Application.onCreate, and check that events arrive.",{"title":446,"path":447,"stem":448,"icon":18,"summary":449,"section":434,"highlights":18,"children":-1},"iOS SDK","\u002Fdocs\u002Fdevelopers\u002Fios-sdk","docs\u002F08.developers\u002F05.ios-sdk","Add the kontala-ios package, start it as the app launches, and check that events arrive.",{"title":451,"path":452,"stem":453,"icon":18,"summary":454,"section":434,"highlights":18,"children":-1},"Events API","\u002Fdocs\u002Fdevelopers\u002Fevents-api","docs\u002F08.developers\u002F06.events-api","Send events from your servers and apps to Markalit, beside the website tag.",{"title":456,"path":457,"stem":458,"icon":18,"summary":459,"section":460,"highlights":18,"children":-1},"MCP server","\u002Fdocs\u002Fdevelopers\u002Fmcp","docs\u002F08.developers\u002F07.mcp","The MCP server for AI tools is not yet available.","AI tools","i-lucide-code-xml","The tag JavaScript API and attributes, the app SDKs, and the Events API.",[464,465,466],{"title":424,"to":425},{"title":430,"to":431},{"title":451,"to":452},{"title":468,"path":469,"stem":470,"children":471,"icon":484,"summary":485,"section":18,"highlights":486},"Security and privacy","\u002Fdocs\u002Fsecurity-and-privacy","docs\u002F09.security-and-privacy\u002Findex",[472,478],{"title":473,"path":474,"stem":475,"icon":18,"summary":476,"section":477,"highlights":18,"children":-1},"Data protection","\u002Fdocs\u002Fsecurity-and-privacy\u002Fdata-protection","docs\u002F09.security-and-privacy\u002F01.data-protection","Where events are stored, how long they are kept, and how visitors are protected.","Data",{"title":479,"path":480,"stem":481,"icon":18,"summary":482,"section":483,"highlights":18,"children":-1},"Access control","\u002Fdocs\u002Fsecurity-and-privacy\u002Faccess-control","docs\u002F09.security-and-privacy\u002F02.access-control","Sign-in, two-step verification, roles and write keys.","Access","i-lucide-lock","Where your data is stored, how long it is kept, and who in your team can do what.",[487,488],{"title":473,"to":474},{"title":479,"to":480},{"title":490,"path":491,"stem":492,"children":493,"icon":500,"summary":501,"section":18,"highlights":502},"Help and support","\u002Fdocs\u002Fsupport","docs\u002F10.support\u002Findex",[494],{"title":495,"path":496,"stem":497,"icon":18,"summary":498,"section":499,"highlights":18,"children":-1},"Contact us","\u002Fdocs\u002Fsupport\u002Fcontact-us","docs\u002F10.support\u002F01.contact-us","Talk to the Markalit team about setup, access or anything else.","Support","i-lucide-life-buoy","Get help from the Markalit team.",[503],{"title":495,"to":496},false,{"path":81,"title":80,"description":83,"summary":83,"icon":18,"section":68,"sections":18,"lastUpdated":506,"body":507},"2026-10-12",{"type":508,"value":509,"toc":1099},"minimark",[510,514,519,538,542,594,597,1000,1003,1007,1067,1070,1076,1080,1083,1086,1095],[511,512,513],"p",{},"A Shopify theme's install snippet cannot see the checkout.\nMarkalit's Shopify pixel, pasted into the store's Customer events, counts its carts, checkouts and orders, line by line.",[515,516,518],"h2",{"id":517},"before-you-start","Before you start",[520,521,522,531],"ul",{},[523,524,525,526,530],"li",{},"Install the ",[527,528,529],"a",{"href":65},"website tag"," in your theme as well.\nThe pixel continues the visits the tag starts, so each order lands in the right visit.",[523,532,533,534,537],{},"Turn on ",[535,536,199],"strong",{}," for the property.\nAn add to cart is only counted when the tag saw the click that made it.",[515,539,541],{"id":540},"add-the-pixel","Add the pixel",[543,544,545,552,563,578,588],"ol",{},[523,546,547,548,551],{},"In Markalit, open the property and find the ",[535,549,550],{},"Shopify Checkout"," card.",[523,553,554,555,558,559,562],{},"In the Shopify admin, open ",[535,556,557],{},"Settings",", then ",[535,560,561],{},"Customer events",", and add a custom pixel named Markalit.",[523,564,565,566,569,570,573,574,577],{},"Under ",[535,567,568],{},"Customer privacy",", set ",[535,571,572],{},"Permission"," to ",[535,575,576],{},"Required",", with analytics as its purpose.",[523,579,580,581,558,584,587],{},"Copy the code from the Shopify Checkout card, paste it in place of what the Code window holds, choose ",[535,582,583],{},"Save",[535,585,586],{},"Connect",".",[523,589,590,591,587],{},"Back in Markalit, turn on ",[535,592,593],{},"Accept carts, checkouts and orders",[511,595,596],{},"The code looks like this, with your property's key in it:",[598,599,604],"pre",{"className":600,"code":601,"language":602,"meta":603,"style":603},"language-js shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u002F\u002F Markalit: sends this store's checkout steps and purchases to Markalit.\n\u002F\u002F Paste it as a custom pixel under Settings > Customer events; nothing in it\n\u002F\u002F needs editing. It loads the pixel from Markalit, so it never goes stale.\n(function (k) {\n  k.v = 1;\n  k.analytics = analytics;\n  k.browser = browser;\n  k.init = init;\n  k.api = typeof api === 'undefined' ? undefined : api;\n  analytics.subscribe('all_standard_events', function (event) {\n    k.q.push(event);\n  });\n  var s = document.createElement('script');\n  s.async = true;\n  s.src = \"https:\u002F\u002Fkonta.la\u002Fv1\u002Fshopify-pixel.js?k=pk_live_...\";\n  (document.head || document.documentElement).appendChild(s);\n})((window.kontala = window.kontala || { q: [] }));\n","js","",[605,606,607,616,622,628,653,674,691,708,725,769,806,830,840,872,891,914,954],"code",{"__ignoreMap":603},[608,609,612],"span",{"class":610,"line":611},"line",1,[608,613,615],{"class":614},"sHwdD","\u002F\u002F Markalit: sends this store's checkout steps and purchases to Markalit.\n",[608,617,619],{"class":610,"line":618},2,[608,620,621],{"class":614},"\u002F\u002F Paste it as a custom pixel under Settings > Customer events; nothing in it\n",[608,623,625],{"class":610,"line":624},3,[608,626,627],{"class":614},"\u002F\u002F needs editing. It loads the pixel from Markalit, so it never goes stale.\n",[608,629,631,635,639,643,647,650],{"class":610,"line":630},4,[608,632,634],{"class":633},"sTEyZ","(",[608,636,638],{"class":637},"spNyl","function",[608,640,642],{"class":641},"sMK4o"," (",[608,644,646],{"class":645},"sHdIc","k",[608,648,649],{"class":641},")",[608,651,652],{"class":641}," {\n",[608,654,656,659,661,664,667,671],{"class":610,"line":655},5,[608,657,658],{"class":633},"  k",[608,660,587],{"class":641},[608,662,663],{"class":633},"v",[608,665,666],{"class":641}," =",[608,668,670],{"class":669},"sbssI"," 1",[608,672,673],{"class":641},";\n",[608,675,677,679,681,684,686,689],{"class":610,"line":676},6,[608,678,658],{"class":633},[608,680,587],{"class":641},[608,682,683],{"class":633},"analytics",[608,685,666],{"class":641},[608,687,688],{"class":633}," analytics",[608,690,673],{"class":641},[608,692,694,696,698,701,703,706],{"class":610,"line":693},7,[608,695,658],{"class":633},[608,697,587],{"class":641},[608,699,700],{"class":633},"browser",[608,702,666],{"class":641},[608,704,705],{"class":633}," browser",[608,707,673],{"class":641},[608,709,711,713,715,718,720,723],{"class":610,"line":710},8,[608,712,658],{"class":633},[608,714,587],{"class":641},[608,716,717],{"class":633},"init",[608,719,666],{"class":641},[608,721,722],{"class":633}," init",[608,724,673],{"class":641},[608,726,728,730,732,735,737,740,743,746,749,753,756,759,762,765,767],{"class":610,"line":727},9,[608,729,658],{"class":633},[608,731,587],{"class":641},[608,733,734],{"class":633},"api",[608,736,666],{"class":641},[608,738,739],{"class":641}," typeof",[608,741,742],{"class":633}," api",[608,744,745],{"class":641}," ===",[608,747,748],{"class":641}," '",[608,750,752],{"class":751},"sfazB","undefined",[608,754,755],{"class":641},"'",[608,757,758],{"class":641}," ?",[608,760,761],{"class":641}," undefined",[608,763,764],{"class":641}," :",[608,766,742],{"class":633},[608,768,673],{"class":641},[608,770,772,775,777,781,784,786,789,791,794,797,799,802,804],{"class":610,"line":771},10,[608,773,774],{"class":633},"  analytics",[608,776,587],{"class":641},[608,778,780],{"class":779},"s2Zo4","subscribe",[608,782,634],{"class":783},"swJcz",[608,785,755],{"class":641},[608,787,788],{"class":751},"all_standard_events",[608,790,755],{"class":641},[608,792,793],{"class":641},",",[608,795,796],{"class":637}," function",[608,798,642],{"class":641},[608,800,801],{"class":645},"event",[608,803,649],{"class":641},[608,805,652],{"class":641},[608,807,809,812,814,817,819,822,824,826,828],{"class":610,"line":808},11,[608,810,811],{"class":633},"    k",[608,813,587],{"class":641},[608,815,816],{"class":633},"q",[608,818,587],{"class":641},[608,820,821],{"class":779},"push",[608,823,634],{"class":783},[608,825,801],{"class":633},[608,827,649],{"class":783},[608,829,673],{"class":641},[608,831,833,836,838],{"class":610,"line":832},12,[608,834,835],{"class":641},"  }",[608,837,649],{"class":783},[608,839,673],{"class":641},[608,841,843,846,849,851,854,856,859,861,863,866,868,870],{"class":610,"line":842},13,[608,844,845],{"class":637},"  var",[608,847,848],{"class":633}," s",[608,850,666],{"class":641},[608,852,853],{"class":633}," document",[608,855,587],{"class":641},[608,857,858],{"class":779},"createElement",[608,860,634],{"class":783},[608,862,755],{"class":641},[608,864,865],{"class":751},"script",[608,867,755],{"class":641},[608,869,649],{"class":783},[608,871,673],{"class":641},[608,873,875,878,880,883,885,889],{"class":610,"line":874},14,[608,876,877],{"class":633},"  s",[608,879,587],{"class":641},[608,881,882],{"class":633},"async",[608,884,666],{"class":641},[608,886,888],{"class":887},"sfNiH"," true",[608,890,673],{"class":641},[608,892,894,896,898,901,903,906,909,912],{"class":610,"line":893},15,[608,895,877],{"class":633},[608,897,587],{"class":641},[608,899,900],{"class":633},"src",[608,902,666],{"class":641},[608,904,905],{"class":641}," \"",[608,907,908],{"class":751},"https:\u002F\u002Fkonta.la\u002Fv1\u002Fshopify-pixel.js?k=pk_live_...",[608,910,911],{"class":641},"\"",[608,913,673],{"class":641},[608,915,917,920,923,925,928,931,933,935,938,940,942,945,947,950,952],{"class":610,"line":916},16,[608,918,919],{"class":783},"  (",[608,921,922],{"class":633},"document",[608,924,587],{"class":641},[608,926,927],{"class":633},"head",[608,929,930],{"class":641}," ||",[608,932,853],{"class":633},[608,934,587],{"class":641},[608,936,937],{"class":633},"documentElement",[608,939,649],{"class":783},[608,941,587],{"class":641},[608,943,944],{"class":779},"appendChild",[608,946,634],{"class":783},[608,948,949],{"class":633},"s",[608,951,649],{"class":783},[608,953,673],{"class":641},[608,955,957,960,963,965,968,971,974,976,978,981,984,987,990,993,995,998],{"class":610,"line":956},17,[608,958,959],{"class":641},"}",[608,961,962],{"class":633},")((window",[608,964,587],{"class":641},[608,966,967],{"class":633},"kontala ",[608,969,970],{"class":641},"=",[608,972,973],{"class":633}," window",[608,975,587],{"class":641},[608,977,967],{"class":633},[608,979,980],{"class":641},"||",[608,982,983],{"class":641}," {",[608,985,986],{"class":783}," q",[608,988,989],{"class":641},":",[608,991,992],{"class":633}," [] ",[608,994,959],{"class":641},[608,996,997],{"class":633},"))",[608,999,673],{"class":641},[511,1001,1002],{},"It loads the pixel from Markalit, so you only need to paste it again if the key changes.",[515,1004,1006],{"id":1005},"what-it-captures","What it captures",[1008,1009,1010,1023],"table",{},[1011,1012,1013],"thead",{},[1014,1015,1016,1020],"tr",{},[1017,1018,1019],"th",{},"In Shopify",[1017,1021,1022],{},"In Markalit",[1024,1025,1026,1035,1043,1051,1059],"tbody",{},[1014,1027,1028,1032],{},[1029,1030,1031],"td",{},"Cart viewed",[1029,1033,1034],{},"the cart page's view",[1014,1036,1037,1040],{},[1029,1038,1039],{},"Product added to or removed from cart",[1029,1041,1042],{},"the Add to cart or Remove from cart click",[1014,1044,1045,1048],{},[1029,1046,1047],{},"Checkout started",[1029,1049,1050],{},"a Checkout page view",[1014,1052,1053,1056],{},[1029,1054,1055],{},"Contact, address, shipping and payment submitted",[1029,1057,1058],{},"the four checkout step clicks",[1014,1060,1061,1064],{},[1029,1062,1063],{},"Checkout completed",[1029,1065,1066],{},"an Order confirmation page view and the order",[511,1068,1069],{},"Each order carries its id, currency, value, subtotal, tax, shipping, discount, whether it was the customer's first order, its lines and its payments.\nThe pixel also sends the buyer's contact details: email, phone, name and addresses.\nAn order is counted once, however many times its confirmation page is seen.",[511,1071,1072,1073,1075],{},"If ",[535,1074,209],{}," is on too, checkout alerts and checkout extension errors appear as struggle signals.",[515,1077,1079],{"id":1078},"where-to-see-it","Where to see it",[511,1081,1082],{},"The Carts, Checkout and Items explores, and the Conversion dashboard.",[515,1084,106],{"id":1085},"consent",[511,1087,1088,1089,1091,1092,1094],{},"The pixel follows the store's Shopify customer privacy settings.\nWith ",[535,1090,572],{}," set to ",[535,1093,576],{},", it only sends for visitors who allowed analytics.",[1096,1097,1098],"style",{},"html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":603,"searchDepth":618,"depth":618,"links":1100},[1101,1102,1103,1104,1105],{"id":517,"depth":618,"text":518},{"id":540,"depth":618,"text":541},{"id":1005,"depth":618,"text":1006},{"id":1078,"depth":618,"text":1079},{"id":1085,"depth":618,"text":106},{"sections":1107},[68,89,110],[1109,1110],{"title":75,"path":76,"stem":77,"summary":78,"children":-1},{"title":85,"path":86,"stem":87,"summary":88,"children":-1},1793023416683]