Tracking My Water Intake With NFC Tags
I’ve been using Nomie for the past few months to track things in my life.
For example, I can tap Coffee to record a cup of coffe (#coffee
), select Mood and 3 to record my mood (#mood(3)
), or type I have a #headache
to record a headache.
Recently, I tried to track my water intake. Whenever I drank some water, I counted the number of sips and logged them into Nomie (#water(5)
). It worked for a few days, but it quickly became tedious. There had to be a better way.
The quest for smart water bottles
I looked online for smart water bottles, but these kept showing up:
Eventually, I came upon HidrateSpark, a brand of smart water bottles that pair to your phone via Bluetooth and automatically track your water intake. They looked cool, but their starting $60 price tag seemed a bit steep.
I happen to quite like my current water bottle. Paired with humangear’s capCAP, my Hydro Flask bottle is hard to beat. If only it were smarter…
I tried to make it smart. I really did. I spent way too much time researching and designing a device that would make any wide-mouth bottle smart. Wireless charging, ultrasonic transducer, Bluetooth Low Energy; I had put all the important keywords together. My AliExpress cart was overflowing with electronic parts, despite never having held a soldering iron in my life. The scope creep became difficult to ignore. NFC tags would be easier.
NFC tags to the rescue
Years ago, I purchased a bunch of NFC tags. I thought they were cool, but I never found a use for them. Until now. I would put them on my bottles and touch them with my phone whenever I took a sip. Genius.
The first thing I learned was that NFC tags don’t play well with metal surfaces. My phone wasn’t broken, my tags weren’t broken, but my knowledge of electromagnetic induction was broken. I had put the tag on a metal bottle, and no amount of touching it with my phone would fool physics.
Putting it on the cap, which is made of plastic, solved the issue.
The second thing I learned was that NFC tags don’t know they’re on a water bottle, or supposed to track water intake. In fact, my tags didn’t know anything. They were empty, and I had to put data on them.
When I track my water intake with Nomie, it creates a note that looks like #water(5)
, indicating that I had 5 sips of water. If touching the tag with my phone meant I took 1 sip of water, then its content should be something like #water(1)
. I used NFC Tools to write #water(1)
to the tag.
The third thing I learned was that Nomie doesn’t support NFC tags. When my phone touches an NFC tag containing https://google.com, it knows to open Google in a browser. When my phone touches an NFC tag containing #water(1)
, it doesn’t even flinch. I needed to teach my phone to notice this tag and tell Nomie about it.
Many apps can be used to do that. Although I started with Tasker, I ended up using Automate, which I find much more enjoyable to use.
My Automate flow works like this:
- Detect NFC tags whose content match the regex
#.*(.*)
- Create a deep link that adds a note to Nomie:
https://open.nomie.app/history?note=#water(1)
- Open the deep link
I touched the tag with my phone, and it worked!
Over time, I made some improvements to my Automate flow to make it more generic and useful. For example, I can change the content of my NFC tag from #water(1)
to #water(?)
, which will prompt me to input the number of sips when I trigger the NFC tag. Likewise, I can change #water
to any other tag, such as #coffee
, #beer
, or #ibuprofen
.
If you’re an Android user, you can download my Automate flow here.
If you’re an iOS user, you can use Shortcuts to implement something similar.
Beyond hydration
Tracking water intake is just the tip of the NFC tracking iceberg.
While it really shines when tracking frequent activies, such as drinking water, it can reduce friction when tracking pretty much anything. And because NFC tags are so cheap (less than $0.25), why not stick them all over the place?
Just think of the opportunities:
#beer
on your beer coaster#peed
on the toilet flush#sneezed
on your Kleenex box#flossed
on your dental floss#mood(?)
on your mirror#water(?)
on a water bottle#weight(?)
on a body weight scale#pullup(?)
on a pull-up bar#spent(?)
on your wallet#ibuprofen(200)
on an Advil bottle
My roll of 100 NFC stickers is on the way.