Visible Explorer
Upload your Visible export and explore your tracking data — privately
Your data never leaves your browser. This page runs R locally in your browser using WebR. The CSV you upload is processed in-memory on your machine — nothing is sent to a server.
Upload your data
Export your data from the Visible app (Settings → Export Data), then drop the resulting visible.csv here.
Once you upload, you’ll get a tour through your data in six short chapters: how much you’ve been logging and where, how your stability and heart-rate measures have moved over time, which trackers tend to travel together, when things seemed to shift, how your menstrual cycle and functional capacity look, and tools to dig into a single tracker, compare two, or revisit your toughest days. None of it leaves your machine.
Chapter I
A first glance
Before we look at any patterns, it’s worth seeing the shape of what you’ve been keeping. Which kinds of things you log most often tells us a lot about where to look next — and what the rest of this page can and can’t tell you.
Snapshot
The bars below count every observation in your export, grouped by category. The longest bar is what you log most. If a category has only a handful of entries, the patterns later on in this page will be wobbly for that category — there’s just not much to go on.
Chapter II
Through time
A year of mornings becomes a year of measurements. Three numbers carry most of the weight in Visible — Stability Score, Heart Rate Variability (HRV), and Resting Heart Rate — and looking at how they’ve moved is usually where insight starts.
Smoothed trends
Each dot is one day. The curved line through the dots is a trend line — it ignores the noise of any one morning and shows the underlying direction. Look for the slope of that line: a slow climb in HRV or Stability over months is a real signal even if any individual day looks all over the place. A drift downward in HRV alongside a climb in Resting Heart Rate is a classic pattern when the body is under more strain than usual. The two shaded bands are the most stable and hardest stretches called out at the top of the page — drawn here so you can see where they sit on the underlying timeline of all three measures.
Stability calendar
Each tile is a day. Colour shows the morning Stability Score (1–5). Reads like a wall calendar: weeks march left-to-right, weekdays stack top-to-bottom. Muted tiles are days you didn’t log. Look for streaks (long runs of similar colour) and breaks (a sudden colour change) — those are the moments worth pairing with whatever was happening in your life that week.
Chapter III
What hangs together
Symptoms rarely move alone. Some travel as a chorus, others move opposite — and a few have nothing to say to each other at all. The next two charts ask: which of your trackers tend to move in step?
Correlation matrix
This is a grid where every tracker meets every other tracker. The colour of each square answers the question: when this one goes up, does that one tend to go up too, or down? Warm tiles = move together (both rise on the same days). Cool tiles = move opposite (one rises while the other falls). Pale tiles = no clear relationship.
The trackers are reordered so that things that behave alike sit near each other — this makes blocks of warm or cool colour easier to spot. None of this proves cause-and-effect; it just tells you which of your measurements are telling overlapping stories.
Symptom clusters
The same idea, drawn as a tree. Trackers that join up early (towards the right edge of the chart) move very similarly — they tell overlapping stories. Trackers that join far to the left are barely related. If two trackers you’d expect to behave similarly fall into different branches, that’s a small surprise worth a second look.
Chapter IV
Where things shift
Two ways to ask “when did something change?” — first, the moments where one tracker’s typical level seems to step up or down; then, a single number per day for how unusual the whole day was.
Change points
A statistical method scans your HRV, Resting HR, and Stability Score timelines and looks for moments where the typical value clearly shifted up or down — not just for a day or two, but settled into a new baseline. The dashed lines mark those moments, with the date next to each. Pair them with your memory: did anything change in your life around those dates? A new medication, an infection, a season change, a stressful stretch? The number of shifts considered scales with how long you’ve been logging — more years, more permitted breakpoints. If there are no lines, your baseline has stayed roughly steady — also useful to know.
Daily symptom burden
This boils every day down to a single number: across all your symptom trackers, how unusual was today compared to your own typical day? Zero is your usual day. Positive values mean a worse-than-usual day across multiple trackers at once; negative values mean an easier-than-usual one. The thin line is each individual day (jumpy by nature); the thick curve smooths over the noise to show the underlying drift. A long stretch above zero is a flare; a slow tilt downward over months is recovery; bouncing tightly around zero is stability.
Chapter V
Cycles & capacity
Two body-rhythm views. First, how your symptoms move across the menstrual cycle — for many people with long COVID or ME/CFS, that cycle interacts strongly with the rest of how the body feels. Then, how your everyday functional capacity has shifted across eight domains of daily living.
Menstrual cycle
If your export has a Period tracker with at least a couple of full cycles, every cycle gets lined up so day 1 is the first day of bleeding, then your Stability and HRV are averaged at each cycle day across all the cycles. Look for repeated dips or peaks at the same point in the cycle — those are patterns that recur every month and may be worth planning around. The shaded ribbon shows how much variability there is around each day’s average; thin ribbons mean the pattern is consistent across cycles, wide ribbons mean cycles vary a lot.
The four phase bands — Menstrual, Follicular, Ovulatory, Luteal — are labelled along the top of each panel using textbook day-ranges, and the dotted vertical line marks the typical day of ovulation (around day 14). Your own cycle won’t match a textbook exactly, but it’s a useful frame for reading the pattern. Cycles shorter than 18 days or longer than 45 are dropped (likely incomplete or merged).
Functional capacity
The FUNCAP-27 questionnaire asks how limited you’ve been in eight everyday domains — things like standing, concentrating, socialising, self-care. Higher on the y-axis means more limited. Each panel is one domain. The dots are individual days; the curve shows the underlying trend. Panels are ordered by how limited you’ve been recently — so the worst-affected domains are at the top-left. A curve that’s been climbing means that area of life has gotten harder; one that’s been falling means it’s eased.
Chapter VI
Pacing & recovery
The body keeps a running tab. What you do today often shows up two or three days later, the days that do knock you sideways have their own arc back to baseline, and a crash that drags on for a week is a different beast than one that lifts overnight. Five views of the action-and-reaction loop that defines pacing — and because patterns shift over time, this chapter focuses on your last 12 months when your data spans more than 18 months. The earlier chapters show the long view; this one tells you where you are now.
The PEM window
Visible has four daily “demand” tags — Physically active, Mentally demanding, Socially demanding, Emotionally stressful — each rated 0–3. This chart asks, for each demand type: when you do more of this, how does your stability score move today, tomorrow, the day after, and so on? Negative bars mean more demand → lower stability later. The highlighted bar is the lag where the relationship is strongest — your personal post-exertional window for that kind of strain. If your worst dip lands consistently at +2 or +3 days, that’s the gap you have to plan across.
Your personal ceiling
A simpler view of the same idea. We bin every day by how much you took on — quiet, light, moderate, busy, very busy — based on the sum of your four demand tags. Then we average the next day’s stability score within each bin. Reading top to bottom = doing more. The vertical dashed line is your typical stability across all days; bars that sit clearly to the left of it are exertion levels where your body tends to push back the next day. The number on each bar is how many days fell into that bin, so you can see which levels are well-evidenced and which are rare.
Rolling pacing
The PEM window and your personal ceiling are static views — averages across many days. This one is moving: a daily score that compares the last week of load (your four demand tags) against the last week of capacity (your stability score). Negative = you’ve been pushing past your envelope; positive = you’ve been resting within it. The score is standardized to your own range, so zero is your personal middle, not anyone else’s. Stretches of red are weeks worth a closer look — the small marks along the bottom show where Crash days fell.
Crash episodes
A crash that lasts a single day and a crash that drags on for a week are not the same event. This chart treats every consecutive run of Crash days as one episode, and uses the run length as a rough severity score — the body’s own measure of how hard it was. Each bar is one episode; bar height is its length in days; colour groups episodes into mild (1 day), moderate (2–3 days) and severe (4+ days). Clusters of bars close together suggest either a stretch where you were genuinely vulnerable, or a single underlying event the body kept re-flaring on.
Recovery trajectory
For every “anomaly day” found in the previous chapter — the days when many of your trackers were off at once — this chart aligns the next two weeks side by side and averages them. Day 0 is the bad day itself; the curves show the typical path back. All three lines are flipped so that “down” always means worse than usual — that way Stability, HRV, and Resting HR can be read together. If one curve climbs back to zero faster than the others, that measure is your leading recovery signal: it tells you the body is on the mend before the others catch up.
Chapter VII
Look closer
Pick a tracker to dig into. Compare two side by side. Revisit your written notes alongside that day’s measurements. Find the days where everything was off at once. Same data, four different lenses — use these when something earlier in the page sparked a question.
A single tracker, in detail
Pick any tracker from the list and see three views of it at once: how it has moved over time, the shape of its distribution (where most of your values land), and whether it tends to be different on certain days of the week. The day-of-week panel can be a quiet revelation — many people find their measurements dip on Mondays after a busy weekend, or improve on Sundays.
Your notes, in context
Days you wrote a note, with the morning HRV and Stability Score for that day. Most recent first. Hover or scroll for more.
Two trackers, side by side
Lay any two trackers over the same timeline. Because they’re often measured in completely different units (HRV in milliseconds vs Stability on a 1–5 scale, say), each is rescaled so that zero is its own typical value — that way the two lines are on the same visual footing and you can actually see them move together or apart.
The smaller chart underneath asks a more subtle question: does one tracker tend to lead the other? If symptoms tend to flare a few days after a drop in HRV, the lag chart will show its strongest bar at a positive lag. If they tend to come together on the same day, the strongest bar will be right in the middle. This is suggestive, not proof — but it’s a useful nudge towards what to investigate next.
Anomaly days
For every tracker, every day, we ask: was today unusually far from your typical value for this tracker? Then we count, per day, how many of your trackers were unusual at the same time. A day where lots of things were off at once is more likely to be a meaningful event than a day where one number happened to be a bit high. The highlighted bars cross the threshold; the table below picks out your top few and shows which trackers were doing what.
These are the days worth pairing with your written notes — and worth noticing if a pattern repeats (e.g. always the day after a big social outing).
A few honest reminders
Before you act on anything you’ve seen here, a few things worth holding in mind.
- Patterns are not causes. If two trackers move together, it doesn’t mean one is causing the other. They might both be downstream of something else — sleep, hormones, infection, weather, the stress of the week. Treat what you find as questions, not answers.
- Sparse data is wobbly. Trackers you’ve only logged a handful of times will produce shaky-looking curves. The longer you log, the more solid every chart on this page becomes.
- Your body is the expert. These charts can surface a pattern you hadn’t noticed, but they can’t tell you how you feel. Cross-check anything striking against your own memory of that period.
- Bring it to someone who can help. If a chart raises a real concern — a clear downward trend, a change-point that lines up with new symptoms — that’s a useful conversation to have with a clinician who knows you.
What’s next
This is a living tool — I’ll keep adding lenses as the science (and your suggestions) push it forward. If there’s a chart you wish you could see, the GitHub Issues is the place to ask.