Workflows
Binding & Affinity
Saturation binding for Kd / Bmax, and competition binding for Ki via Cheng-Prusoff
Two binding workflows: saturation binding to characterize a ligand-target pair from scratch, and competition binding to derive Ki for an unlabeled compound using a labeled tracer with known Kd.
Saturation Binding (Kd, Bmax)
The model (one-site total binding)
Total = (Bmax * [L]) / (Kd + [L]) + NS * [L]Where [L] is the free ligand concentration. Specific binding (the part that matters) is the first term:
Specific = (Bmax * [L]) / (Kd + [L])- Kd — equilibrium dissociation constant. Lower means tighter binding.
- Bmax — maximum specific binding. Reflects receptor density.
- NS — non-specific binding component, usually linear in [L].
Total vs specific vs non-specific
Most experimental designs run all three:
- Total binding — labeled ligand alone, all binding sites accessible.
- Non-specific binding — labeled ligand with a large excess of unlabeled ligand to block specific sites. Whatever signal remains is non-specific.
- Specific binding — total minus non-specific. This is what gets fit for Kd and Bmax.
Gradiance fits all three simultaneously when total and non-specific data are present, which gives tighter CIs than fitting subtracted specific binding alone.
Scatchard plot
The Scatchard transform (bound/free vs bound) is produced as a diagnostic. Don't use the slope of the Scatchard plot to estimate Kd — the linearization biases toward low-binding points and inflates uncertainty. Gradiance reports Kd from the non-linear fit; the Scatchard plot is for recognizing two-site behavior (curved Scatchard) at a glance.
What you need
- Labeled ligand titration spanning at least 0.1× Kd to 10× Kd (wider if possible). 8 concentrations, in triplicate.
- Matched non-specific wells at each concentration, run in parallel.
- A single equilibrium time per concentration (kinetic association is a different workflow — see Kinetics).
Competition Binding (Ki)
The idea
Hold a labeled tracer (with known Kd) at a fixed concentration, titrate an unlabeled competitor, and measure how much labeled binding is displaced. The IC₅₀ of the displacement curve converts to Ki via Cheng-Prusoff:
Ki = IC50 / (1 + [L] / Kd)where [L] is the tracer concentration and Kd is the tracer's previously-determined dissociation constant. The conversion handles the fact that the observed IC₅₀ depends on tracer concentration, while Ki does not.
What you need
- A previously-validated Kd of the tracer in your system. Without it, you can't derive Ki — the fit will return only the apparent IC₅₀.
- The tracer concentration used in the competition assay.
- A competitor titration covering the expected IC₅₀, ideally spanning 4 orders of magnitude.
- Vehicle (no competitor) and full-displacement (high competitor dose) controls. The agent uses these to define the binding window.
One-site vs two-site competition
Many systems competition-bind to two distinct sites with different affinities. The fit defaults to one-site; if the Hill slope is < 0.7 or the residuals show a systematic S-shape, the agent will offer to refit with a two-site model (Ki_high, Ki_low, fraction). This is a real biological question — don't accept two-site by default, but don't ignore it when the data demand it either.
QC specific to binding
See Quality Control for the full list. The ones that bite hardest in binding:
- Bmax unbounded. Highest concentration didn't saturate. Add higher-concentration points or accept that Bmax is a lower bound, not an estimate.
- Kd extrapolated. Half-saturation falls outside the tested range. Same fix as IC₅₀ extrapolation in dose-response: bracket the inflection.
- Linear non-specific dominates. When NS binding is comparable to specific at high tracer concentrations, Bmax CIs balloon. Use a higher-affinity tracer, or pre-block before measurement.
- Hill slope deviates from −1 (competition). A one-site competition has Hill = −1.0. Real values 0.85–1.15 are normal; outside that, consider two-site behavior or non-equilibrium artifacts.
What the result looks like
Saturation runs return Kd, Bmax, and NS slope with 95% CIs, plus the Scatchard diagnostic. Competition runs return Ki (when a tracer Kd is provided) and the underlying IC₅₀, with optional two-site refit. Standard exports apply: figure (PNG/SVG/PDF), parameter table, Python re-run script. See Understanding your results for reading the result panel.