Swaymark

Personal analytics · Build a sustainable personal analytics setup for indie software work and business context.

A Practical Quantified-Self System for Indie Developers

Build a small, private personal analytics system that connects health, mood, habits, work, and product signals without drowning in dashboards.

An indie developer's health, mood, code, and product signals arranged on one quiet personal timeline

An indie developer can see app events, subscriptions, revenue, posts, commits, workouts, sleep, and mood across a dozen tools. The problem is rarely a shortage of charts. It is the gap between a business result and the human day that produced it.

Personal analytics can narrow that gap when it remains small, private, and tied to a decision. Swaymark's product loop combines five daily signals, mood check-ins, permissioned Apple Health context, GitHub contribution history, and optional product or business sources. None is required to tell the whole story, and no dashboard can reconstruct context you did not record.1

Start with a decision, not a data warehouse

Write down a recurring decision you want to improve. Should you protect an earlier focus block after later nights? Does a launch cadence leave enough recovery for support work? Does a morning planning habit coincide with finishing the day's most important task? Each question suggests a small set of signals.

Avoid importing a metric merely because an API exposes it. More variables create more chances for a coincidental relationship and more maintenance when schemas, devices, or integrations change. A system that helps one weekly decision is more valuable than a personal data lake you stop reviewing.

Build the smallest useful signal stack

Use four layers: personal context, subjective state, observable work, and optional business outcomes. Apple Health can centralize permitted health and activity information from Apple devices and compatible sources. GitHub can provide dated contribution activity under its documented rules. Mood and focus still need a brief self-report because neither platform knows how the work felt.364

Keep value types explicit. A step count and a 1 to 10 mood rating are not equally measured. A contribution event and monthly recurring revenue do not share the same cadence. A readiness score is not raw physiology. A useful system retains those distinctions instead of normalizing everything into one life score.

A minimal personal analytics stack for an indie developer
LayerStarter signalDecision it may supportLimit
RecoverySleep duration or morning energyWhen to protect demanding focusNot a medical readiness verdict
Subjective stateMood or focus check-inHow task shape fits the daySelf-report depends on timing and context
WorkTop task or focus block completedWhether a routine supports follow-throughTasks differ in value and difficulty
ProductOne activation or revenue signalWhether work reached a customer outcomeLag and external factors can dominate

Make dates, definitions, and privacy part of the system

Define where overnight sleep belongs, which time zone governs a workday, how late coding crosses midnight, and what done means for the outcome. Version those definitions when they change. Leave missing data missing and mark device or integration changes so the timeline does not imply continuity that is not there.

Connect only sources you are comfortable bringing together. Apple documents permission protections around Health data. Swaymark says users choose sources and can revoke integrations, with read-only Apple Health access for requested categories. Its public privacy language does not claim that all data remains only on-device, so review the current policy before deciding what to connect.52

Run a weekly review that respects exceptions

Once a week, pick one comparison. Name the window and sample, inspect typical values, and read the days that contradict the apparent pattern. Add notes about launches, illness, travel, caregiving, marketing pushes, outages, or unusually difficult technical work.

Describe observations carefully: moved together, tended to follow, or worth testing. Do not say sleep caused revenue, mood caused commits, or a workout produced activation. Product outcomes have many influences and often lag the work that contributed to them.

  • Review one question per week.
  • Show the sample and missing days beside the result.
  • Separate activity from quality and customer value.
  • Write down the strongest counterexample.
  • Save only observations that remain useful and evidence-qualified.

Turn the observation into one small experiment

Choose a reversible change with a start date, end date, and stable outcome. Examples include protecting the first hour from messages, ending late coding on three nights, or reducing the top-task scope after a poor sleep window. Change one main variable where practical.

At review, keep, revise, or stop the experiment. No effect is a result. So is a pattern with too few observations to trust. Treat health and recovery data as context, not diagnosis. Persistent fatigue, sleep problems, mood changes, or concerning physiological values belong with qualified medical care, not another dashboard.

Put it into practice

Build a personal analytics loop

  1. 01Choose one recurring work or product decision.
  2. 02Select one personal signal, one work outcome, and optional business context.
  3. 03Define timing, time zone, value type, and done criteria.
  4. 04Connect only sources whose privacy tradeoffs you accept.
  5. 05Collect several weeks while keeping missing values and context visible.
  6. 06Review the sample, typical values, and strongest counterexample weekly.
  7. 07Run one bounded experiment and keep only insights that improve decisions.

Plain answers

Frequently asked questions

What should an indie developer track first?

Start with one repeated decision, one personal context signal, and one meaningful work outcome. Sleep or morning energy plus a completed focus block is enough for a first comparison.

Are GitHub commits a good productivity metric?

No single activity count measures developer productivity. GitHub contributions can provide dated context, but they miss quality, difficulty, planning, support, and product impact.

Should I connect revenue to health data?

Only if the question is useful and the privacy tradeoff is acceptable. Revenue often lags work and has many external causes, so describe any relationship very cautiously.

How often should I review personal analytics?

A weekly review is frequent enough to remember context without reacting to every daily fluctuation. Longer windows are often needed before interpreting a recurring pattern.

Do I need every Swaymark integration?

No. Connect only sources that answer your current question. Swaymark is most useful when the job crosses categories, not when collecting more data is the goal.

Can personal analytics diagnose burnout or illness?

No. It can surface context and questions, but it is not medical care. Persistent or serious health and mood concerns require a qualified professional.