IP2Free

LinkedIn, Facebook, TikTok: Which App Tracks You Most?

2026-04-28 15:49:05

Not all social apps spy equally. Some are far worse than others — and the gap is shocking.

Every time you tap a link inside a social media app, you probably assume you're just reading an article or visiting a website. What you're less likely to realize is that you never actually left the app. You're inside what's called an in-app browser—a stripped-down, heavily modified web viewer that the platform controls completely. And control, it turns out, is the whole point.

For most users, comparing the tracking aggressiveness of these in-app browsers is nearly impossible. There's no privacy label that says "this app rewrites the web pages you visit." There's no notification that says "we are logging every tap you make." The behavior happens silently, underneath the content you're reading, and the companies building these tools have very little incentive to advertise what they're doing. That information gap is exactly what this breakdown is designed to close.


           Test Globally with LycheeIP


How Researchers Actually Catch Apps in the Act

The methodology that exposed in-app browser tracking at scale was pioneered most visibly by software engineer and privacy researcher Felix Krause, whose 2022 investigations into iOS in-app browsers produced some of the most cited findings in this space. The technique is elegant in its simplicity and devastating in what it reveals.

The Diagnostic Sandbox

Krause built a specialized test website—essentially a controlled environment—and then opened that site through the in-app browsers of major social media platforms. The page contained specific JavaScript detection code designed to report back any foreign JavaScript that the host app itself had injected into the Document Object Model (DOM) after loading. Think of it like dusting a crime scene: the page is clean when it arrives, and anything that shows up afterward came directly from the app.

Why JavaScript Injection Matters

Because JavaScript is the functional language of the web, it has immense power over the user experience. According to cybersecurity standards outlined by the OWASP Foundation regarding client-side security and DOM manipulation, unauthorized script injection is generally classified as a significant security risk. When an application injects its own JavaScript into a page, it can:

  • Read what you type in real time.
  • Track where your finger moves or hovers.
  • Intercept form submissions (including passwords).
  • Monitor which specific elements you tap.
  • Observe how long you spend looking at specific parts of a page.

When a social media app injects its own JavaScript into a third-party website, it is essentially inserting its own surveillance code into someone else's property—without the website owner's knowledge and almost certainly without yours.

The test also checks for other critical signals: whether the app is bypassing certificate transparency (a security standard that prevents Man-in-the-Middle snooping), whether it intercepts secure POST requests, and whether it creates persistent tracking identifiers that follow you across sessions.

This research framework—open, reproducible, and testable by anyone with technical knowledge—is the evidentiary foundation for everything that follows. It isn't speculation. It's code talking.

           Test Globally with LycheeIP


The Ranking — From Most Invasive to Least

Based on documented JavaScript injection testing and published research findings, here is how the four major platforms stack up. This is ordered from most aggressive to least aggressive in their in-app browser tracking behavior.

🔴 1. TikTok — Most Aggressive

TikTok's in-app browser behavior is, by the available evidence, the most invasive of any major platform tested. Krause's research found that TikTok's iOS in-app browser injects JavaScript that monitors all keystrokes and taps on third-party websites you visit through the app.

This includes text you type into forms—which can mean usernames, passwords, credit card numbers, and search queries—as well as every element you tap on the page. TikTok has stated that the keylogging code exists strictly for "debugging, troubleshooting, and performance monitoring" purposes, and that it does not actually collect the data. However, security researchers note that the distinction between capability and use is cold comfort. The infrastructure to capture that data is present and active, and independent verification of TikTok's internal data practices is impossible for outside researchers.

Bottom line: TikTok's in-app browser should be avoided for any sensitive browsing. Full stop.

🟠 2. Facebook (Meta) — Highly Aggressive

Facebook's in-app browser—shared in a modified form with Instagram—was documented injecting a JavaScript file called pcm.js (Pixel Custom Monitoring) into every external website a user visits through the app.

This script is a modified version of Meta's advertising pixel, the same tracking technology Meta sells to website owners for ad attribution. When a website owner installs the Meta pixel voluntarily, they are participating in a business arrangement. But when Meta injects a version of that same pixel into websites that never agreed to it, the dynamic shifts entirely. The injected script can monitor interactions, build behavioral profiles, and link browsing activity back to your real-name Facebook identity.

Meta defended pcm.js by arguing it helps users with payment security and complies with Apple's App Tracking Transparency (ATT) framework. Researchers dispute this, noting that ATT was designed to prevent cross-app tracking, and Meta's method creates a structural workaround by operating entirely within its own sandboxed environment.

Bottom line: Facebook's in-app browser acts as a first-party ad-tracking tool running covertly on third-party websites.

🟠 3. Instagram (Meta) — Highly Aggressive, Slightly Different Profile

Instagram shares Meta's core infrastructure and injects the same pcm.js code, placing it in the same tier as Facebook. However, Krause's testing noted one additional behavior unique to Instagram's in-app browser at the time of research: Instagram was also tracking the user's selection of text on external pages.

If you highlighted a word or passage while reading an article, Instagram's browser recorded it. Text selection tracking provides a remarkably granular window into reading behavior, cognitive focus, and intent. It is exactly the kind of signal that advanced advertising systems use to infer emotional response.

Bottom line: Instagram is effectively Facebook with a younger aesthetic and equally aggressive browser instrumentation.

🟡 4. LinkedIn — Moderate, But Not Clean

LinkedIn, owned by Microsoft, was also found by Krause's testing to inject JavaScript into external websites opened through its in-app browser. The injected code was documented as capable of monitoring clicks and other interactions on third-party pages, though the scope appeared narrower than what was found in TikTok or Meta's apps.

LinkedIn acknowledged the finding and stated that the JavaScript was used for performance and error reporting, and that it did not use the capability to track personal input. Microsoft's public accountability obligations as an enterprise technology company arguably create a different risk profile than ByteDance or Meta. Additionally, LinkedIn offers a direct setting within its app to force links to open in the device's default browser.

Bottom line: LinkedIn is the least alarming entry on this list, but "least alarming" is not the same as "safe." The injection behavior was real and documented.


LycheeIP (Developer-First Proxy Infrastructure)

For technical operators, growth teams, and developers, understanding how different browsers and network environments handle traffic is critical. LycheeIP is a developer-first proxy and data infrastructure provider designed to give engineering teams granular control over their network routing, global QA testing, and authorized public-data collection.

When your QA team needs to verify how your web application renders inside an embedded WKWebView across different geographic regions, testing from a single office IP is often insufficient. By integrating a stable proxy network into your automated mobile testing pipelines, you can simulate global user sessions without immediately triggering rate limits. For data teams tasked with extracting public social media data to analyze how competitors format content for in-app browsers, high-performance datacenter proxies help your extraction tasks run consistently and securely. Conversely, if you are conducting localized ad verification to see exactly what external users see when they click your links, utilizing dynamic IP routing allows your automated systems to closely mimic organic, residential traffic patterns. Partnering with a professional data infrastructure platform ensures that developers can build, test, and scrape with confidence, maintaining complete visibility over how their web assets perform in the wild.


The Verdict — One Habit That Changes Everything

After reviewing the evidence across all four platforms, the conclusion is less about choosing the "right" social app and more about adopting one universal default: never browse the web inside a social media app.

This isn't hyperbole; it is a practical response to a structural problem. Every in-app browser tested modifies the web experience in ways that benefit the platform's data collection, not the user's safety. Here is how to break the in-app browser loop in practical terms:

  • Use the "Open in Browser" option: Most apps include this in a share menu or three-dot overflow menu when viewing a link. Make tapping it a reflex.
  • Change default browser behavior in settings: Check the settings of every social app you use for an option to automatically open links externally (like LinkedIn provides).
  • Use a privacy-focused mobile browser as your default: Routing external links through a hardened browser like Firefox Focus or Brave adds another layer of protection against the trackers embedded in the destination website itself.
  • Treat in-app browsers like public computers: Never enter passwords, payment information, or personally sensitive data while inside a social media app's browser.
  • Audit your app permissions periodically: Staying attentive to what access you have granted each app—and revoking what you don't actively need—reduces your overall attack surface.

The companies building these in-app browsers are structurally motivated to collect as much behavioral data as possible. Knowing that cost exists is the first step. Refusing to pay it—by exiting the in-app browser every single time—is the second.


           Test Globally with LycheeIP


Frequently Asked Questions

Q: What is an in-app browser and why is it different from a regular browser?

A: An in-app browser is a built-in web viewer that social media apps use to display external links without sending you to your phone's default browser. Unlike Safari or Chrome, in-app browsers are controlled entirely by the app developer, meaning the platform can modify the web pages you visit (including injecting tracking code) in ways a standard, sandboxed browser would never allow.

Q: How was the JavaScript injection tracking discovered and is the research credible?

A: The most prominent research was conducted by software engineer Felix Krause in 2022, using a controlled test website that detected foreign JavaScript injected by the app's browser. The methodology is open, reproducible, and has been independently verified by security researchers.

Q: Does TikTok actually use the keystroke data it can collect through its in-app browser?

A: TikTok has stated that the keystroke-monitoring code exists solely for debugging and performance purposes. However, independent researchers cannot verify TikTok's internal data handling. The technical capability to log keystrokes is confirmed to be present and active, which is the core security concern.

Q: What is pcm.js and why is Meta injecting it into websites I visit?

A: pcm.js (Pixel Custom Monitoring) is a JavaScript file derived from Meta's advertising pixel. When Meta injects it into third-party websites through its in-app browser, it can monitor your interactions and link that behavior back to your Facebook or Instagram identity, even on websites that never consented to hosting Meta's tracking infrastructure.

Q: Can websites detect that they are being loaded inside an in-app browser and refuse to load?

A: Yes, technically. Developers can inspect HTTP request headers and JavaScript environment properties—such as the User-Agent string, documented extensively on MDN Web Docs—to determine if they are rendering inside an embedded WebView or WKWebView. Some security-sensitive services, like banking apps, do exactly this and force a redirect to a system browser.

Q: Is LinkedIn safe to use for browsing links compared to TikTok or Facebook?

A: LinkedIn was found to inject JavaScript capable of monitoring clicks on external pages. While the documented scope of its tracking was narrower than TikTok's keystroke monitoring, it is still a privacy concern. Because LinkedIn offers a setting to automatically open links in your default browser, it provides a meaningful user-control option, making it the least alarming platform on this list—but not perfectly clean.

Q: Does this tracking still happen if I have App Tracking Transparency (ATT) enabled on my iPhone?

A: Apple's App Tracking Transparency framework limits cross-app tracking using device identifiers, but in-app browser JavaScript injection operates in a different layer. Because the tracking happens inside the app's own environment rather than across apps via a shared identifier, it largely bypasses what ATT was designed to prevent.

IP2free