Megrim: Migraine Log
• New on Analytics: "Away from home" — how many entries you recorded more than 100 km from your home location, and where.
• "Travel" is now one of the default suspected triggers.
Megrim is an open-source, offline-first migraine diary that helps you find your personal triggers. The app automatically adds time-of-day, season, daylight, and moon context to your entries — and, if you opt in, local weather and barometric pressure — calculating correlations entirely on your phone. With no accounts, no cloud servers, and zero tracking, your health data stays completely private and under your control.
What's inside:
* Automatic on-device enrichment — daylight hours, time of day, season, and moon phase computed locally; opt in to add local weather and barometric-pressure change (24h/48h). No manual entry.
* Real personal analytics — trends by day-of-week, time-of-day, season, daylight, pressure change, and moon phase, plus a "suspected factors" card that uses odds ratios over your own log.
* Your data stays yours — on-device storage only, with full export and import (JSON and CSV).
* No accounts, no servers, no telemetry — by default the app makes no automatic network requests (the only exception is the place-name search you type when setting your home location). Weather enrichment is opt-in; when enabled, the only network request is to Open-Meteo.com, to fetch weather for the approximate (~1 km rounded) location and date of the entries you create.
* Free and open source (GPL-3.0-or-later).
Megrim is a personal diary and is NOT a medical device. It does not diagnose, treat, cure, or prevent any condition. "Suspected factors" are statistical associations in your own log — association is not causation. Always consult a qualified healthcare professional.
Weather data by Open-Meteo.com.
- Author: Steve Maegley
- License: GNU General Public License v3.0 or later
- Issue Tracker
- Source Code
- Changelog
- Build Metadata
- Reproducibility Status
Donate
Versions
Although APK downloads are available below to give you the choice, you should be aware that by installing that way you will not receive update notifications and it's a less secure way to download. We recommend that you install the F-Droid client and use that.
Download F-Droid-
x86_64This version requires Android 8.0 or newer.
It is built and signed by F-Droid, and guaranteed to correspond to this source tarball.
Download APK 22 MiB PGP Signature | Build Log
-
arm64-v8aThis version requires Android 8.0 or newer.
It is built and signed by F-Droid, and guaranteed to correspond to this source tarball.
Download APK 21 MiB PGP Signature | Build Log
-
armeabi-v7aThis version requires Android 8.0 or newer.
It is built and signed by F-Droid, and guaranteed to correspond to this source tarball.
Download APK 19 MiB PGP Signature | Build Log
-
x86_64This version requires Android 8.0 or newer.
It is built and signed by F-Droid, and guaranteed to correspond to this source tarball.
Download APK 22 MiB PGP Signature | Build Log
-
arm64-v8aThis version requires Android 8.0 or newer.
It is built and signed by F-Droid, and guaranteed to correspond to this source tarball.
Download APK 21 MiB PGP Signature | Build Log
-
armeabi-v7aThis version requires Android 8.0 or newer.
It is built and signed by F-Droid, and guaranteed to correspond to this source tarball.
Download APK 19 MiB PGP Signature | Build Log
-
x86_64This version requires Android 8.0 or newer.
It is built and signed by F-Droid, and guaranteed to correspond to this source tarball.
Download APK 22 MiB PGP Signature | Build Log
-
arm64-v8aThis version requires Android 8.0 or newer.
It is built and signed by F-Droid, and guaranteed to correspond to this source tarball.
Download APK 21 MiB PGP Signature | Build Log
-
armeabi-v7aThis version requires Android 8.0 or newer.
It is built and signed by F-Droid, and guaranteed to correspond to this source tarball.
Download APK 18 MiB PGP Signature | Build Log
• Editing a start time now moves the end time with it, so a backdated entry needs one date pick, not two (thanks @zatteo).
• JSON exports include the app's computed analytics, so reports built from an export match the Analytics tab.
• New offline report page (tools/report.html) turns an export into a printable summary or PDF (thanks @nfd9001).
• Fixed: tapping an empty calendar day (or "Add past entry") and then backing out left an empty entry behind. Nothing is saved until you tap Save.
• Fixed: returning from "Manage" (triggers, head locations, medications) no longer discards unsaved edits on an entry.









