Xiaomi’s “Internet services” revenue line pulled in roughly $4.4 billion in a recent fiscal year, and almost none of it came from selling phones. It came from what happens on the phones after you buy them. That distinction matters more than any bloatware count, because it tells you the preloaded apps on a Xiaomi device aren’t dead weight the company forgot to clean up. They’re a monetization layer running quietly underneath the OS you think you own.
We’ve written before about the sheer number of system apps Xiaomi ships and how few you can actually remove. This post is about the part nobody screenshots: the ad tracking infrastructure baked into those apps, and why it exists at all.
the package that runs the ad business
At the center of it is a system component called MSA. On a global device it ships as com.miui.msa.global, which the debloat databases list plainly as Main System Ads, alongside a sibling package com.miui.systemAdSolution that does the behavioural targeting. Neither appears in your app drawer. Both are background services with elevated permissions, coordinating ad delivery across Security, GetApps, Mi Browser, Themes, the file manager, and sometimes the calculator and clock apps.
MSA talks to Xiaomi’s ad servers, pulls device and behavior signals (installed app list, usage frequency, rough location, and an advertising identifier called OAID that MIUI generates outside of Google’s ad ID system), and decides which ads to inject into which native app slot. This is why a security scanner app on your phone can show you a banner for a mobile game, or why the file manager occasionally recommends a shopping app you’ve never searched for. Those aren’t glitches. They’re ad impressions, and Xiaomi gets paid per view or per install.
the margin that explains it
Xiaomi committed publicly, by board resolution in 2018, to capping its net profit margin on hardware at 5 percent and returning anything above that to customers. Take that commitment at face value and the rest follows: if the phone itself is close to a break-even product, something after the sale has to carry the economics. The internet services line is that something.
We’re deliberately not putting an average-revenue-per-user figure here. The numbers that circulate for MIUI ad ARPU trace back to analyst estimates rather than anything Xiaomi reports, and a figure we can’t check has no business in a post about companies being straight with you. The reported revenue line is enough on its own. It’s large, it’s audited, and almost none of it comes from the hardware.
Which means the bloatware isn’t a side effect of cutting corners. It’s the plan.
where the ads actually surface
If you’ve used a Xiaomi or Redmi device for more than a few weeks, you’ve probably seen at least one of these without registering what it was:
- A “recommended” install card inside GetApps that wasn’t a search result
- A full-screen ad when opening the Security app after a scan
- Lock screen wallpaper suggestions that are actually sponsored content
- Notification shade “tips” that link to affiliate pages
- Browser homepage tiles that rotate based on recent app installs, not recent searches
Each of these is a separate ad unit with its own targeting logic, and each one pulls from the same underlying MSA data pipeline. It’s a small internal ad network operating entirely inside apps you didn’t choose to install and can’t fully remove without ADB access or root.
the settings Xiaomi doesn’t lead you to
MIUI does let you turn most of this off, but the toggles are scattered and none of them are labeled “stop showing me ads.” Here’s where they actually live, as of recent MIUI and HyperOS builds:
Settings > Passwords & security > Privacy > Ad Services, where you’ll find “Personalized ad recommendations.” Turning this off doesn’t remove the ads, but it stops them from being targeted using your behavior data, which cuts off the most valuable part of the pipeline for Xiaomi.
Inside GetApps: Settings > Personalized recommendations, a separate toggle from the one above, because Xiaomi splits ad consent by app rather than giving you one system-wide switch.
Inside Security app: Settings > Receive recommendations, which controls the scan-result ad injections specifically.
Turning off all three doesn’t uninstall MSA or stop it from running. It just narrows what data feeds the targeting. The service itself keeps running in the background regardless, because it also handles legitimate functions like push notifications for system apps, and Xiaomi doesn’t offer a clean way to separate the ad function from the utility function.
what this changes about how you think about “clean” phones
The usual advice for dealing with OEM bloatware is removal: disable the app, hide it, or root the device and delete it outright. That’s still worth doing. But removal treats the problem as clutter, when the more accurate frame is that you’re opted into an ad network by default, one that uses your installed app list and usage patterns as inventory.
If you’re evaluating a Xiaomi or Redmi device, don’t just count how many preloaded apps you can’t delete. Check whether GetApps, Security, and the browser show sponsored content within the first hour of setup, before you’ve logged into anything. If they do, that’s not a bug being patched later. That’s the business model announcing itself on day one.