---
title: "TikTok Pixel tracks a button on desktop but not on mobile"
description: "A button sends a TikTok event on desktop but not on mobile, or the reverse. Usually the mobile layout has its own copy of the button. How to track both."
updated: "2026-10-23"
url: "https://ispixelworking.com/guides/tiktok.mobile_cta_tracking_mismatch/generic"
---

# TikTok Pixel tracks a button on desktop but not on mobile

Fix guide · Any website · medium · about 30 min · updated 2026-10-23

For the finding “Mobile buttons are tracked differently from desktop” (`tiktok.mobile_cta_tracking_mismatch`).

## What this means

On your page, a button or link sends a TikTok Pixel event (for example `Lead` or `Contact`) when it is clicked on a desktop screen, but not when the same button is tapped on a phone, or the other way round.

We report this as **possible**: a site can legitimately behave differently on phones. Check it yourself before changing anything.

Why it can cost you money:

- Most ad traffic is mobile. If the mobile button is silent, those conversions never reach TikTok.
- Campaigns that optimize for conversions then learn from the few desktop visitors.
- Reports undercount the device where people actually convert.

## How to confirm it yourself

1. Open the page in a **private (incognito) window**, open developer tools (F12), go to **Network** and filter by `analytics.tiktok.com/api/v2/pixel`. Accept cookies.
2. Click the button on the desktop layout and note the event that leaves (the `event` field in the request payload).
3. Turn on device emulation (the phone icon in Chrome's developer tools, or *Responsive Design Mode* in Firefox and Safari), choose a phone, reload and accept cookies again.
4. Tap the same button. If no event leaves, or a different one does, you have the mismatch. Confirm on a real phone if you can: some sites switch layouts on the device type, not only on the screen width.

TikTok's **Test Events** tab in Events Manager is another way to watch events arrive while you tap through the site on your phone.

## How to fix

The cause is almost always that the phone and desktop versions are different elements, and the tracking is attached to only one of them.

1. **Find out whether there are two buttons.** Right-click the button and choose *Inspect* in both layouts. If the element, its ID or its classes differ, your site renders a separate mobile copy (common in site builders, sticky mobile bars, mobile menus and "show on mobile only" blocks).
2. **Attach the event to every copy.** Options, from simplest:
   - give both copies the same identifying attribute (a class like `js-book-call` or a `data-` attribute) and attach the code to that, instead of to one element's ID;
   - in a tag manager, change the click trigger so it matches both copies (for example "Click Classes contains `js-book-call`" instead of a single Click ID), and check it in **Preview** mode on both layouts;
   - if the button leads to another page (a booking or thank-you page), send the event when that page loads instead, so it no longer depends on which copy was tapped.
3. **Send the event once per action.** If both copies are in the page at the same time (one hidden by CSS), make sure a single tap does not fire two events.
4. **Check mobile-only links.** On phones, a "Call us" or "WhatsApp" button often becomes a `tel:` or app link. If that is your conversion, track it on the mobile element too, with the same event name as on desktop (`Contact` is TikTok's standard event for this).
5. **Use the same call on both layouts**, for example:

   ```js
   ttq.track('Contact', {}, { event_id: crypto.randomUUID() });
   ```

6. **Publish** your changes and clear any cache.

## Common causes

- The site builder renders separate desktop and mobile versions of a section, and only the desktop button carries the tracking code or the tag manager selector.
- A sticky mobile call-to-action bar was added later without tracking.
- The click trigger uses an element ID that exists only in one layout.
- The desktop button submits a form (tracked on submit), while the mobile button links to a different page or app.
- A script waits for a mouse event (`mouseover`, `mousedown`) that touch screens do not send the same way.

## How to verify the fix

1. Repeat the test in desktop and phone layouts: the same button sends the same event once in both.
2. Re-run the check on IsPixelWorking. The finding should be gone.

## Sources

- TikTok API for Business, Install Pixel using code (`ttq.track`, event code placement): https://business-api.tiktok.com/portal/docs?id=1739585702922241
- TikTok API for Business, Supported events (Contact, Lead and others): https://business-api.tiktok.com/portal/docs?id=1771101186666498
- TikTok Business Help Center, Events Manager: monitor and diagnose (Test Events): https://ads.tiktok.com/resources/help/article/tiktok-events-manager-monitor-and-diagnose?lang=en
- Chrome for Developers, Simulate mobile devices with device mode: https://developer.chrome.com/docs/devtools/device-mode
- Google Tag Manager Help, Click trigger: https://support.google.com/tagmanager/answer/7679320
