partial image of a symptom tracker
Screenshot of a section of Rebecca’s Daily Log in the AirTable app on her phone. It shows time resting, symptoms, and some activities.

I meticulously record a lot of information about my health and treatment on a daily basis. It helps me understand trends over time, and accurately report changes to my doctor. I keep track of activity, symptoms, medications, foods, heart rate, pain, rest, and other details. This is work, and requires some ongoing commitment to be useful. It’s also one of the very best things I’ve ever done to manage my health.

Before each doctors appointment I look at my data since the last appointment and jot down summary information. I then say to my doctor things like, “It’s been 52 days since my last appointment with you. in that time I’ve had headaches 31 days, which is 60% of the time.” or “I’ve had 8 days of pain at a six or higher where i needed to take Tramadol. That compares with 15 days in the period before out last appointment. The LDN is helping to reduce the severity of my pain.”

I know that not everyone is able to record so much, but it has been really helpful for both me and my doctor.

I’ve chosen to use a spreadsheet app to do this for a couple of reasons.

  1. I want an easy way to enter it daily on my phone.
  2. I keep track of some non-standard information, so the designed tracker apps I’ve tried don’t work for me.
  3. I want to be able to easily average, count, analyze the data, identify trends over time.

I’ve used Airtable since the summer of 2018, and I like it a lot. It’s easy to use on my phone, and kind of looks like a custom-designed app. The desktop browser version is more full featured, which is where I do my analysis.

What to Log

I’ve changed what fields I use over time, as I change what feels important to me to track. These are the big categories that matter to me:

  • Rest
  • Symptoms
  • Pain
  • Medications and supplements
  • Food
  • Activity
  • Heart rate data

These broad categories are captured through lots of smaller data points.


  • How long I slept at night
  • Whether I had night sweats
  • Whether I slept poorly
  • Whether I took a nap or rested with my eye closed, and for how long


I have a long, long pick list of symptoms I’ve developed over time. It’s color coded and grouped, so all pain is together, and all GI symptoms are together. For some symptoms, I’ve eventually broken down subcategories of symptoms to make is easy to query by severity – like minor headache, headache, major headache.


I record how much pain I’m in on waking, my maximum pain level for the day, and my pain level when I’m getting ready to go to sleep.

Medications and Supplements:

Like symptoms, this is a very long pick list, and color coded and grouped. I keep everything I take daily at the top of the list so that it’s easy to select. Things I take as needed are color coded in groups lower down. I sometimes specify medications or supplements with specific milligram amounts, especially if its something I expect will change over time. This can be particularly helpful with situations like low dose naltrexone, where people have to experiment with dosage amounts to find the most effective one.


I played with creating a database for my food, but in the end I chose to do this as a long text field. and just type in what I ate. Because of this, I don’t use if for analysis, but I can always reference it.


My illness requires me to keep my activity to a minimum. Looking at records of activities can show me when my energy envelope is in creasing, when my activity level was too high, when activity is what contributed to other negative data points, and how often I’ve managed to do things I love! In fact, I divide it into several sections:

  • Self-care (like washing my face, brushing my teeth, changing my clothes),
  • General activities (cooking, tidying, going out to the porch, working, phone calls, meetings)
  • Things I love that feed my soul (crocheting, making art, sending mail, reading, spending time with good friends). Keeping track of things I do that I love is also a daily reminder to pay attention to them. And when I’m feeling rotten in other ways, it can be affirming to see how often I still manage to do them.

Heart Rate Data:

This is probably unique to folks with ME/CFS who are heart rate pacers, but you might need something pretty specific for you particular situation.

  • Maximum heart rate
  • Average heart rate
  • Lowest heart rate
  • Number of minutes with heart rate below 50 bpm
  • Number of minutes with heart rate above my anaerobic threshold
  • Number of minutes above my ideal pacing number


I have a long text field I can just type in whatever might seem relevant. Sometimes I record emerging ideas on food intolerances, or note a particularly stressful event, ideas about how a medication might be affecting me. Anything that might give helpful context to the data of the day.

How to Log

I often stop at some point during the day and log what I know so far, including how long I slept, what I’ve eaten so far, symptoms so far, etc. I have time in my nighttime routine explicitly set aside to finish logging anything else for the day. This is when I take off my heart rate tracker and synch it to its app.

Many of my fields are set up simply where i only have to click on the symptoms I’ve had, or record a number in a number field – like how much pain I was in on a 0-10 scale, or my maximum heart rate.


Most of us aren’t data analysts, but there are certain things that I think most people can do to look at their data over a period of time.

One is to do simple counts and percentages. An example scenario: There have been 67 days this year. I had a migraine 20 days. That means I’m having migraines on 30% of my days.

One is to look at averages. Most spreadsheet programs give you the option to see an average value for a column. TO do this, its important that the field you want to find an average in is actually set up as the type of “number,” as opposed to a text field that you are typing a number into.

To level up, take those basic thing and use them in more complex scenarios. Like, let’s say that I start a new migraine medication. I know that in the first 67 days of the year, I had migraines 30% of the time. Now, If I look at the 35 days since that, when I’ve been on the migraine medication, what percentage of those 35 days did I have a migraine? Did it help? How much did it help?

You can also use this to find trends. Like, I’ve discovered that several medications I’ve taken have inadvertently increased my heart rate. I’ll know what my heart rate data was for the days before, and can compare to my heart rates on the days of. Then, if I go off the medication, compare the results after.  Most of this can be determined easily, with the the thoughtful use of filters.