Tool Share: HLExport – Free iOS app to export Apple Health data to JSON

Why I built it

I hit the usual wall when trying to run ML on my own Apple Health stats: there’s no simple, offline way to get all samples as raw JSON.

What HLExport does

  • Date-range picker → pulls every HealthKit sample (steps, HR, sleep, HRV, etc.)
  • Exports to .json in the iOS share sheet or copies to clipboard
  • Mood logger (7-point scale) saves into HealthKit State of Mind on iOS 18+
  • Offline / open-source (SwiftUI)
  • No tracking, no servers

Links

I’m curious how the QS community might use this: personal dashboards? LLM-driven journaling? Let me know and I’ll prioritize features!

Apple’s App Store says “not available in your region”. Shame as I was after the date ranger extraction feature; exporting the complete Health App data once a month is tedious and consmes resources.

Whether JSON format will work for me (I want to load the data into a database, specifically MariaDB, for analysis) no idea as yet.

Thank you for reaching out, glimfeather.

Because of the additional legal and compliance requirements in Europe, we have not yet submitted our store application for that region. We do plan to support Europe, so please bear with us a little longer.

Thank you for reaching out, glimfeather.
I’m pleased to inform you that the app is now available in Europe as well.
We’d love for you to give it a try.

App Store: ‎HLExport on the App Store

Not convinced that HLExport is exporting all data from Apple Health. I know that Apple are reluctant to allow anyone to export their medication history so I’ll overlook that omission in HLExport. But there many other data items/data points in the Health app than the handful that this app exports. I really do want all my data exported subject to the caveat above.

Thank you for your request, glimfeather.

It is true that we were not able to output all healthcare data.

We would like to update the app so that it can output all types of data as much as possible within the scope of the terms of use. Also, since there are issues with processing speed when outputting all types, we plan to add a function that allows you to select the type of data to output.

Please wait a moment.