HomeBlogWhy we replaced the NFC tag with a Bluetooth key

Field notes

Why we replaced the NFC tag with a Bluetooth key

Why the first Spark moved from an NFC tag to a Bluetooth key, what we thought we were giving up — and what has changed since.

EngineeringPublished Updated 6 min read

On this page

Spark started with an NFC tag. You tapped it to your phone, the phone read a token, the apps unlocked. It was pleasingly physical. It also did not work on phones without an NFC reader.

Availability was the forcing function

Plenty of budget and mid-range Android phones ship with no NFC reader at all, and on the ones that had one, the API surface looked uneven to us at the time — inconsistently exposed to apps, and restricted on some platforms. That mattered more to us than it would to a company selling elsewhere: our first market is India, where mid-range Android is the phone most people are actually holding. A focus tool that only works on some phones is not a product. Bluetooth Low Energy is on every phone that can run Spark.

NFC Spark

A tap to unlock. Needs a phone with an NFC reader, which some budget Android phones do not have. No battery, and slightly cheaper.

Bluetooth Spark

Hold the phone against it for about 15 seconds. Works with any phone that runs Spark — iPhone on iOS 17 or later, Android 12 or later. Runs on a CR2032 coin cell.

Neither works at a distance, so either one belongs somewhere you have to walk to. What differs is which phones can use it.

What we thought we lost

NFC's virtue here was never cryptographic — a standard tag can be copied with ordinary tools, and the NFC Spark sold today is no exception. Radio looked worse: anything broadcasting a fixed value can be recorded by software in seconds. Moving to BLE with a naive static token would have been an availability upgrade and a security downgrade at the same time.

So the move came with a protocol change rather than a straight port: the static token became a challenge–response exchange, meant to restore the guarantee in software. That exchange has since been replaced by a fixed broadcast again — see the note at the top.

  • Works on every phone that can run Spark, not a subset.
  • No range to rely on: the Bluetooth key only unlocks with the phone held against it, so it still has to live somewhere you walk to.
  • New failure mode to design around — the key now has a battery, a CR2032 coin cell.

The battery question

A flat battery should not have to mean a locked phone. That is why there are five emergency unlocks, for life, and deliberately no more: enough to handle a flat battery or a lost key, few enough that they cannot quietly become the normal way you unlock. Strict mode hides them, so under Strict mode a flat key means fresh batteries.

The escape hatch

How emergency unlocks work, how many you get, and why the number is capped rather than generous.

Read this
More reading

The rest of the argument

Each post stands alone. If you would rather have instructions than opinions, the guides are the maintained layer.

All posts
After the reading

Put the unlock in another room.

Once your Spark is paired, locking is one tap and works with Bluetooth off. Unlocking means walking to the key and holding your phone against it — which is the whole difference between deciding to stop and having to stand up. The app is free; the key is the one-time buy.