← Back to Musings

Hardware & Making

Programmable NFC Cards: What They Cost and How Easy They Are to Use

NFC (Near-Field Communication) cards are tiny programmable chips that respond when a phone or reader is held close — no battery, no pairing, no setup on the reading side. They have been cheap for years, but many people assume you need specialist hardware to write to them. You don't. This post covers exactly how much they cost, which chip to buy, how to write to one using only your phone, and what you can do with them.

<$0.20
Per card (bulk)
~1 s
Tap-to-read time
504 B
Storage (NTAG213)
100k
Write cycles

Which chip should you buy?

Most affordable programmable cards use chips from NXP's NTAG series or the older Mifare Classic line. NTAG cards work with every modern Android phone and with iPhones (iOS 13+) without any app needed for reading. Mifare Classic chips are cheaper but require a dedicated app on iOS and are unsupported on some newer Android builds. For personal projects, stick with NTAG.

Chip User storage ISO standard iPhone readable Typical price (100-pack) Best for
NTAG213 ★ 137 bytes (144 B total) ISO 14443-A Yes (iOS 13+) $8–$15 URLs, short text, triggers — the sweet spot for most projects
NTAG215 504 bytes ISO 14443-A Yes $12–$22 Longer payloads, Amiibo emulation
NTAG216 888 bytes ISO 14443-A Yes $18–$30 vCards, longer Wi-Fi credentials, multi-record NDEF
Mifare Classic 1K 752 bytes (16 sectors) Proprietary + ISO 14443-A No (needs app) $5–$10 Budget access control, not recommended for general use
Mifare Ultralight C 144 bytes ISO 14443-A Partial $6–$12 Disposable tickets, transit, low-cost tags

The starred row — NTAG213 — is the right default. A URL for a webpage, a Wi-Fi login record, a plain-text note, or a phone action trigger all fit comfortably in 137 bytes. At roughly 8–15 cents per card in packs of 100, they are essentially free.

How much do they actually cost?

Prices vary by form factor (card vs. sticker vs. key fob vs. coin) and quantity. The cheapest option by far is AliExpress, though delivery takes 2–4 weeks. Amazon has faster shipping but at a small premium. Either way, under £1 / $1 per card is easily achievable.

~$0.08–0.20 per card
for NTAG213 cards or stickers bought in packs of 50–100 from AliExpress. Amazon prices run $0.25–0.50 each for the same chips with Prime delivery.

Form factor Chip Qty Approx. price (USD) Price per unit
Sticker (30 mm round) NTAG213 100 $8–12 ~$0.08–0.12
Credit-card size (85×54 mm) NTAG213 10 $3–5 ~$0.30–0.50
Credit-card size (85×54 mm) NTAG213 100 $12–18 ~$0.12–0.18
Key fob NTAG213 10 $5–8 ~$0.50–0.80
Coin tag (25 mm) NTAG215 10 $4–7 ~$0.40–0.70
Anti-metal sticker NTAG213 20 $8–12 ~$0.40–0.60

Anti-metal tags are worth the slight premium if you plan to stick cards onto laptops, metal cases, or appliances. Standard NFC antenna coils detune on metal surfaces; anti-metal variants add a ferrite layer that restores read range.

How to program them (no PC needed)

Programming an NFC card is just writing an NDEF record — a small structured message — to the chip's memory. You can do this with your phone.

On Android

  • Install NFC Tools (by wakdev, free on Google Play).
  • Open the app, tap Write, then Add a record.
  • Choose your record type: URL, text, phone number, Wi-Fi credentials, vCard, etc.
  • Tap Write / OK, then hold the back of your phone over the card.
  • Done in under two seconds. The card now works with any NFC-enabled device.

On iPhone

  • Install NFC Tools (same app, available on the App Store).
  • On iPhone 7 or later, NFC writing works from iOS 13 with no system settings needed.
  • Follow the same steps as Android above — tap Write, choose a record, scan the card.

No app at all: If you only need to write a URL, the iOS Shortcuts app has a built-in NFC action since iOS 14. Android has NFC in Quick Settings on many launchers. NFC Tools is still the better choice for anything beyond a single URL.

From a Raspberry Pi or Arduino

The most common reader/writer module is the PN532 breakout board (~$4–8 on AliExpress). It speaks I²C, SPI, or UART and has well-maintained libraries for both platforms. On a Pi you can use the nfcpy Python library; on Arduino, Adafruit's Adafruit_PN532 library is the standard choice. A typical write operation from Python looks like:

import nfc

def write_url(tag):
    record = nfc.ndef.UriRecord("https://example.com")
    tag.ndef.records = [record]

with nfc.ContactlessFrontend('usb') as clf:
    clf.connect(rdwr={'on-connect': write_url})

How to read them

Reading is even easier than writing — it requires zero setup on most devices.

With a smartphone

On Android, NFC background reading is on by default. Tap your phone to the card and the system automatically opens the associated URL in the browser, prompts to connect to Wi-Fi, adds a contact, or whatever the NDEF record says to do. No app required.

On iPhone (7 or later, iOS 14+), background tag reading is also on by default. A notification banner appears at the top of the screen; tapping it follows the NDEF action.

With a USB reader

The ACR122U is the most common desktop USB reader (~$25–40). It appears as a smart-card device and works with nfcpy, libnfc, and the PC/SC stack on Windows, macOS, and Linux. If you only need read-only scanning (e.g. logging which card was presented), cheaper UART modules work fine too.

With an Arduino or Pi (PN532)

The same PN532 board used for writing will read cards in milliseconds. Most IoT use cases — "tap this card to trigger this smart home scene" — run fine on a Pi Zero W (~$15) with a PN532 module.

What can you do with them?

📇

Digital business card

Write a vCard or a link to your LinkedIn profile. Hand over the card; they tap it once.

📶

Wi-Fi sharing

Write a Wi-Fi credential record. Guests tap the card by the door to join your network without typing a password.

🏠

Smart home triggers

Stick a card by the front door. Tap it on the way in to run an NFC-triggered Shortcut or Tasker profile — lights on, alarm off, coffee machine starts.

🎮

Game props & tabletop

Program cards as game items, unlock codes, or puzzle clues. Players scan them with their phones for instant reveal.

📦

Inventory & asset tags

Stick NTAG213 stickers on equipment. A Pi with a PN532 logs every scan to a spreadsheet — no barcode scanner needed.

🔑

Access control

Program the UID whitelist on a Pi + PN532 relay board to control a door lock. Cards cost 15 cents; readers under $10.

Limitations to be aware of

  • Read range is short. NTAG213 cards work reliably at 0–4 cm. This is a feature (tap intent) but rules out automatic long-range scanning.
  • Storage is small. NTAG213 gives you 137 bytes — enough for a URL or a short Wi-Fi record, but not an image or long document. Store a URL that links to your content instead.
  • Anyone can rewrite an unlocked card. If that matters, write-protect the card after programming (NFC Tools supports this). Once locked, the card cannot be modified — even by you — so do it only when the content is final.
  • Metal surfaces block the signal. Use anti-metal cards on laptops, phones, or toolboxes.
  • iPhones older than iPhone 7 have no NFC. iPhone 6s and below can't read NFC cards at all.

Quick summary

If you want to try NFC for a project, the cheapest sensible path is a pack of 100× NTAG213 stickers from AliExpress for ~$10 (about 10 cents each), the free NFC Tools app for writing from your phone, and the built-in NFC on any Android or modern iPhone for reading. If you want hardware integration, add a PN532 module (~$5) and a Raspberry Pi or Arduino.

Starter shopping list: 100× NTAG213 stickers (~$10) · NFC Tools app (free) · Optional PN532 reader/writer module (~$5) · Optional ACR122U USB reader (~$30). Total to get started properly: under $50, and you can do useful things for just $10.