How to Configure Wi-Fi Non-Persistent MAC Randomization on Android for Advanced Tracking Protection

Every network interface controller (NIC) is assigned a globally unique 48-bit hardware identifier known as a Media Access Control (MAC) address. When your smartphone probes for available Wi-Fi networks in airports, shopping centers, or office buildings, broadcasting a static factory MAC address allows commercial location-tracking beacons to log your exact physical movements and correlate your identity across diverse geographical locations.

To defend against physical surveillance, modern Android versions implement Wi-Fi MAC Randomization. However, by default, Android generates a single persistent pseudo-random MAC address for each saved network (meaning the same pseudo-random identifier is reused every time you reconnect to that specific SSID). For heightened operational security, power users can activate Non-Persistent MAC Randomization, which regenerates a fresh random identifier on every connection event. This guide explains how to configure both per-network and non-persistent randomized MAC policies on Android.

Configuring Per-Network MAC Privacy

To verify or modify the MAC randomization policy for an existing Wi-Fi network:

  1. Open Settings > Network & internet > Internet (or Wi-Fi).
  2. Tap the settings gear icon next to your currently connected network.
  3. Scroll down and tap Privacy.
  4. You are presented with two options:
    • Use randomised MAC (Default): Generates an encrypted virtual MAC address for this network, hiding your true device hardware identifier.
    • Use device MAC: Transmits your factory-assigned hardware MAC address (required only for legacy enterprise networks using strict hardware MAC filtering).
  5. Ensure Use randomised MAC is selected.

Enabling Non-Persistent MAC Randomization in Developer Options

To force Android to rotate its randomized MAC address continuously rather than reusing the same randomized identifier for each SSID, enable the enhanced developer toggle:

  1. Open Settings > About phone.
  2. Scroll to the bottom and tap Build number rapidly seven times until you see the confirmation message: “You are now a developer!”
  3. Return to Settings > System > Developer options.
  4. Scroll to the Networking category.
  5. Locate and toggle ON Wi-Fi non-persistent MAC randomization.

When this setting is active, Android rotates its MAC address every time it disconnects and reconnects to a Wi-Fi network, ensuring zero persistent correlation between tracking sessions.

Comparison: Factory MAC vs Persistent vs Non-Persistent Randomization

Feature Device MAC Persistent Random MAC Non-Persistent Random MAC
Identifier Permanence Permanent hardware burnt-in address Fixed per unique SSID Regenerates on every reconnection
Location Tracking Protection None (High surveillance risk) Prevents cross-network tracking Prevents both cross-network & return visit tracking
Captive Portal Compatibility Full Full (Remembers captive login) May require re-authenticating on captive portals

Get the best tech tips delivered straight to your inbox.

Join thousands of readers mastering Apple, Google, Microsoft, and Linux.