How to read a concentration-vs-time chart

A walkthrough of every element on the DoseCurve chart — axes, jumps, decay, the therapeutic band, peak, trough and average — so you can interpret what the line is showing you.

A pharmacokinetic chart looks simple once you know what every element means. This page walks through each piece of the DoseCurve display so you can read the chart without guessing — what the axes represent, what each jump in the line means, what the dashed reference lines do, and how the summary metrics relate to what your eye sees.

As ever, this is educational background reading rather than clinical guidance. The chart is a model. It is useful for thinking about shape; it is not a substitute for bloodwork.

The axes

The horizontal axis is time in days, starting from your chosen Day 0. Day 0 is the calendar anchor — the first date in your timeline. You set it explicitly in the chart settings panel so that the displayed dates match real days on your calendar.

The vertical axis is active compound remaining in the body, in milligrams. It is the sum of every undecayed contribution from every dose you have entered, at every point in time. It is not a serum concentration in ng/dL or pg/mL — that conversion requires a volume-of-distribution and bioavailability calculation that depends on individual physiology and that the model deliberately does not estimate.

If you have multiple substance profiles enabled in compare mode, each profile draws its own line in its own colour, with the legend identifying which is which.

Each vertical jump is an injection

Every time the line steps up, that is an injection on that calendar day. The size of the jump equals the dose (in mg) you entered for that event. Between injections the line slopes downward exponentially — fast at first, then slower as less material remains. That decay rate is determined by the half-life you set for the substance.

For a recurring schedule (every X days, or specific weekdays), DoseCurve expands the schedule out across the chart window and draws every implied injection. For manual one-off entries, the jump appears only on the day you entered it.

The dashed reference lines

If you have entered a therapeutic range — a minimum and maximum target — the chart shades a band between them. Two horizontal dashed lines mark the boundaries.

The therapeutic range is a tool you set; DoseCurve does not impose one. For TRT-like applications people often set it based on the reference range their lab uses. For peptides there is rarely a published range. Either way, the band is for visualising shape, not for setting clinical targets — bloodwork and your prescriber do that.

Steady state — what it looks like

When you start a new protocol, the first few cycles climb. Each new dose lands on top of partially decayed previous doses, and the cumulative total grows. After roughly four to five half-lives, the amount eliminated between doses equals the amount injected — and the curve flattens into a repeating oscillation around an average. That is steady state.

Visually:

The "time to steady state" metric on the dashboard reports how many days the model expects this to take, given your inputs.

The summary metrics

Above the chart you'll see a row of cards:

These metrics are derived from the modelled curve, not from any measurement. Two people running the same numbers will get the same metrics, regardless of their actual physiology.

What changes the shape, in order of magnitude

Roughly:

  1. Half-life. Biggest single influence on shape. Doubling the half-life roughly halves the peak-to-trough ratio at the same schedule.
  2. Injection frequency. Second biggest. Doubling the frequency at half the per-injection dose halves the peak-to-trough ratio at the same average.
  3. Total weekly dose. Scales the whole chart vertically. Shape is preserved.
  4. Start date / schedule offset. Shifts the horizontal position of peaks and troughs without changing the shape.
  5. Missed or doubled doses. Local dips and bumps that propagate forward through the chart for several half-lives.

If you want to understand what a change will do before you make it, change it in DoseCurve first and watch the chart.

Common misreads to avoid

Further reading