Hepatic clearance from in-vitro data.
Enter CLint, fu,mic and fu,p, or just a SMILES, and get hepatic and plasma clearance by well-stirred or parallel-tube IVIVE, together with how far off a prediction like this has been for real drugs.
No account needed.
Worked example
CLint 177.8 µL/min/mg · fu,mic 0.88 · fu,p 0.05 · Rb 0.53
- Plasma CL
- 4.73 mL/min/kg
- EH
- 0.43
- Clearance
- medium
Plasma CL, mL/min/kg, log scale
- Predicted plasma CL 4.73
- Observed CL fell here for half of 301 reference drugs predicted like this: 4.32–27.7
- Observed for midazolam: 5.3
CLint 135.6 µL/min/mg · fu,mic 0.43 · fu,p 0.10 · Rb 0.77
- Plasma CL
- 9.87 mL/min/kg
- EH
- 0.62
- Clearance
- medium
Plasma CL, mL/min/kg, log scale
- Predicted plasma CL 9.87
- Observed CL fell here for half of 301 reference drugs predicted like this: 9.02–57.9
- Observed for verapamil: 18.0
CLint 16.7 µL/min/mg · fu,mic 0.76 · fu,p 0.22 · Rb 1.0
- Plasma CL
- 3.34 mL/min/kg
- EH
- 0.16
- Clearance
- low
Plasma CL, mL/min/kg, log scale
- Predicted plasma CL 3.34
- Observed CL fell here for half of 301 reference drugs predicted like this: 3.05–19.5
- No observed plasma CL for diltiazem in the app's reference set
CLint 0.58 µL/min/mg · fu,mic 0.47 · fu,p 0.01 · Rb 0.55
- Plasma CL
- 0.0101 mL/min/kg
- EH
- 0.0009
- Clearance
- low
Plasma CL, mL/min/kg, log scale
No band here: the prediction falls outside the range the band was calibrated on, and the calculator says why. “Renal filtration (fu,p × GFR) rivals predicted hepatic CL. Total CL may be much higher.”
- Predicted plasma CL 0.0101
- Observed for warfarin: 0.06
Computed by the calculator: human liver microsomes, well-stirred. Inputs from Obach 1999 (Drug Metab Dispos 27:1350); observed plasma CL from the Lombardo et al. 2018 compilation, via PKSmart.
Where it fits in drug discovery
Clearance sets how long a drug stays in the body, and so how large and how frequent a dose must be. Most small-molecule drugs are cleared by the liver. Long before any human data exist, project teams estimate human clearance from a test-tube assay with liver microsomes or hepatocytes, run on nearly every new compound. Turning that in-vitro number into whole-body clearance is IVIVE: in-vitro to in-vivo extrapolation.
- Hit findingCompounds screened for activity on the target.
- Hit to leadFirst stability assays. A structure alone already gives an estimate, before synthesis.
- Lead optimisationMake, test, predict, in weekly cycles: rank compounds by predicted human clearance and set the CLint the next one must reach.
- Candidate selectionPredicted human clearance feeds the first human dose estimate.
- PreclinicalRat and dog PK; species scaling cross-checks the in-vitro estimate.
- ClinicalMeasured human clearance replaces the prediction.
How it works
Four steps take a test-tube number to human clearance. The numbers below are midazolam's, the first worked example above.
-
1Measure how fast liver enzymes clear it
Incubate the compound with human liver microsomes or hepatocytes and sample over time. The parent compound disappears exponentially; the rate constant divided by the protein (or cell) concentration is the intrinsic clearance, CLint.
CLint = 177.8 µL/min/mg protein
Points computed from that CLint at 0.5 mg/mL protein.
-
177.8µL/min/mg protein× 32mg protein/g liver× 25.7g liver/kg body weight= 146mL/min/kg
2Scale to a whole liver
Multiply by how much microsomal protein a gram of liver holds, and how many grams of liver a kilogram of body weight carries. For hepatocytes, the factor is 99 million cells per gram. The result is the clearance the whole liver would have, if blood flow were unlimited and all drug were free.
146 mL/min/kg (Barter et al. 2007; Davies & Morris 1993)
-
3Count only the free drug
Enzymes act only on drug that is not bound to protein. Divide by fu,mic, the free fraction in the incubation, to get the clearance of free drug; the liver model then weighs it by fu,b, the free fraction in blood (fu,p divided by the blood-to-plasma ratio Rb).
146 / 0.88 = 166 mL/min/kg; fu,b = 0.05 / 0.53 = 0.094
-
4Let blood flow set the ceiling
The liver cannot clear more than the blood that reaches it, 20.7 mL/min/kg in humans. The well-stirred model combines flow Qh with free intrinsic clearance: CLh = Qh · fu,b · CLint,u / (Qh + fu,b · CLint,u). The fraction removed in one pass is the extraction ratio, EH.
CLh = 8.92 mL/min/kg in blood; × Rb 0.53 = 4.73 in plasma
Last, the check against real drugs: IVIVE from microsomes and hepatocytes under-predicts on average, so the calculator places its answer beside the range in which observed clearance fell for comparable reference drugs. That is the band in the worked example, and how it was validated is below.
What you get
- IVIVE with every intermediate
- Scaled and unbound CLint, extraction ratio, plasma and blood clearance, and how far each input moves the answer. Nothing hidden behind one number.
- The observed-clearance band
- Beside each prediction, the range in which observed plasma clearance fell for half of 301 reference drugs predicted like this one.
- A second opinion from structure
- Human clearance and Vss from the SMILES alone, with fu,p and fu,inc, and an applicability verdict from similarity to the training set.
- Your lab's correction
- Fit a correction on compounds your own lab has measured. It narrows the band for your assay rather than someone else's.
- Species scaling
- Rat, dog or monkey clearance to human by six methods, each listed with the error it showed on 369 drugs.
- Target CLint
- Work backwards: the CLint an assay must read for a compound to reach a target clearance.
Validation, plainly
IVIVE from human liver microsomes and hepatocytes under-predicts in-vivo clearance by about 3-fold on average. ivive.app does not hide that: every result carries the range observed for comparable drugs, calibrated on 301 reference drugs with published in-vitro and in-vivo data.
- On an independent Pfizer dataset (Tess et al. 2023) the 50% band held the observed value 58–68% of the time, never below its nominal coverage.
- The band is wide on purpose. It is the method's measured error, not decoration.
- The band is empirical, not a statistical interval: across 301 reference drugs, observed plasma CL fell between 0.91× and 5.9× the well-stirred prediction for the middle half of them. Every prediction gets that same factor range.
- Like all passive IVIVE, it assumes hepatic metabolism drives clearance. Where active uptake (OATP substrates such as statins or bosentan) or biliary excretion does, it under-predicts further, and the band does not cover that.
- Compounds with fu,p below 0.01 are flagged instead of given a range, because no range held for them.
- Multi-species allometry scored worst of the scaling methods measured, and the page says so.
Sources: Obach 1999 (Drug Metab Dispos); Tess et al. 2023; Mahmood & Balian 1996; Hallifax & Houston 2019 (Drug Metab Dispos). Each method in the app links its equation and source; training data and licences are on Data sources.
How often the 50% band held, on drugs it never saw
Coloured: 58–68% across subsets of the Tess et al. 2023 Pfizer data. Dark line: the 50% the band promises.
Use it from your LLM
ivive.app is also an MCP server, so Claude, ChatGPT or any MCP client can call the calculations instead of doing the arithmetic itself. No key needed.
predict_inputscalc_clheptarget_clintinput_sensitivitysimilar_drugsscale_to_human
A structure you send through an LLM also reaches that LLM's vendor. For proprietary compounds, check that the vendor is cleared for them, or ask about a private deployment.
Connect a client
In a terminal
claude mcp add --transport http \
ivive https://api.ivive.app/mcp/
In claude_desktop_config.json, under "mcpServers"
"ivive": {
"command": "npx",
"args": ["mcp-remote", "https://api.ivive.app/mcp/"]
}
Streamable HTTP endpoint, with the trailing slash
https://api.ivive.app/mcp/
Use the API
Every calculation is a plain HTTP endpoint, the same one the calculator calls. Single compounds need no key; batches of up to 25 need a free account. For bigger batches or more volume, ask for a key at hello@ivive.app.
The full reference, with every endpoint, field and unit: api.ivive.app/docs (try requests in the browser), ReDoc, or the OpenAPI document to generate a client.
Example: midazolam
CLint 177.8 µL/min/mg · fu,mic 0.88 · fu,p 0.05 · Rb 0.53, human
Request
curl https://api.ivive.app/api/ivive/clhep \
-H 'Content-Type: application/json' \
-d '{"clint": 177.8, "fu_mic": 0.88, "fu_p": 0.05,
"rb": 0.53, "species": "human"}'
Response
{
"clhep": 8.9204,
"eh": 0.430938,
"classification": "medium",
"model_used": "well-stirred",
"species": "human",
"clint_scaled": 146.2227,
"clint_u": 166.1622,
"fu_b": 0.09434,
"qh": 20.7,
"clp": 4.7278,
"clp_corrected": null,
"band": {
"low": 4.3218, "high": 27.7116,
"coverage": 0.5, "basis": "reference", "n": 301
},
"upper_bound": false,
"flags": []
}
Request
import requests
r = requests.post(
"https://api.ivive.app/api/ivive/clhep",
json={"clint": 177.8, "fu_mic": 0.88, "fu_p": 0.05,
"rb": 0.53, "species": "human"},
)
band = r.json()["band"]
print(r.json()["clp"], band["low"], band["high"])
Output: plasma CL, then its observed-CL band, mL/min/kg
4.7278 4.3218 27.7116
Free, and more
| Feature | Free | On request |
|---|---|---|
| Single-compound calculations | Yes, no account | |
| Batch, numbers or SDF | up to 25 compounds, with a free account | up to 500 |
| Saved lab corrections | 1, with a free account | unlimited |
| MCP for LLMs | 30 requests a minute, 300 a day | API key, higher volume |
| Private deployment | on your own servers; structures never leave your network |
Need larger batches, an API key or a private deployment? Seen a result that looks wrong, or missing an input or method? Write to hello@ivive.app.
Your data
Structures and inputs you enter are processed in memory and not stored. A lab correction or IVIVC dataset you save keeps its data, visible only to you. An account holds your email address and a password hash. The site and the API run in Nuremberg (netcup), the account database in Frankfurt (Neon); the privacy policy has the details.