Firefly luciferase catalyses a two-step reaction: luciferin is first adenylated using ATP, then that intermediate reacts with O₂ to release CO₂, AMP, pyrophosphate (PPi) and an excited-state oxyluciferin that emits a photon as it relaxes. Because ATP is the scarce reagent in the analytical "ATP bioluminescence assay" (hygiene swabs, cell-viability kits), light output tracks the reaction rate for the ATP pool actually present.
v = kcat·[E]·[S] / (Km_app + [S])
Km_app = Km·(1 + [P]/Ki) ← product inhibition
dS/dt = -v, dP/dt = +v
Light L(t) = φ·v(t)
[S] is remaining ATP, [P] is accumulated oxyluciferin + PPi acting as a competitive inhibitor that raises the apparent Michaelis constant as the reaction proceeds. That is why a real luminometer trace is not a flat glow but a fast rise followed by an exponential-like decay: substrate depletion and product inhibition both push the reaction rate back toward zero.
- ATP dose — sets the initial substrate pool [S]₀; more ATP means a taller flash and more total photons, which is exactly the calibration principle used to back-calculate an unknown ATP concentration from measured light.
- Luciferase level — scales [E], and therefore the peak turnover rate kcat·[E].
- Ki — how strongly product inhibits the enzyme; a small Ki gives a sharp spike-and-crash flash, a large Ki gives a slower, more sustained glow.
- Temperature — kcat follows a Q10 ≈ 2 rule (roughly doubling per 10 °C) up to a point, then the enzyme's catalytic efficiency starts to fall as it destabilises.
Real-world relevance: this rise-then-decay "flash kinetics" is exactly what commercial ATP luminometers and firefly-luciferase reporter assays measure, and why some kits add pyrophosphatase or use mutant luciferases to flatten the decay into a longer "glow" signal.