Antibody Numbering
Find the antibody and T-cell-receptor variable domains in a protein, number them under IMGT, Kabat, Chothia, Martin, AHo or Wolfguy, assign their closest germline genes, and scan them for sequence liabilities.
| Reached by | Tools → Antibody Numbering · right-click a coding sequence → More → Antibody numbering |
| Formats | CSV |
| Sample project | Antibody numbering |
What it does
Reads a protein (a coding sequence on your construct, a region you selected, or residues you paste), finds every immunoglobulin or T-cell-receptor variable domain in it, and gives each residue its position in a standard numbering scheme. A single chain, a Fab arm or an scFv with two domains in a row are all handled: each domain is found, typed and numbered on its own.
Numbering is what makes two antibodies comparable. Position H95 means the same place in every heavy chain, so a CDR can be cut out, grafted, compared against a germline or searched for a known risk motif without aligning anything by hand.
What this computes
Per domain
- chain type: heavy, kappa, lambda, or TCR alpha, beta, gamma or delta
- species of the best-scoring profile HMM, among those you allow
- domain span in the input, first and last residue
- bit score and E-value of the profile HMM hit that found it
- numbering of every residue in the scheme you chose, with insertion codes (H82A, H82B…)
- framework and CDR regions: FR1, CDR1, FR2, CDR2, FR3, CDR3, FR4, with the residues of each, under the CDR definition you chose
- CDR3 length
- closest V and J germline genes and the percent identity to each, searched in the species you allow
Per liability
- Asn deamidation (NG, NS, NT, NN, NH)
- Asp isomerization (DG, DS, DT, DD, DH)
- N-linked glycosylation sequon (N-X-S/T, X not proline)
- Asp-Pro acid cleavage (DP)
- Met and Trp oxidation
- unpaired cysteine, and a missing conserved cysteine at IMGT 23 or 104
- for each: the motif, its residues, its IMGT positions, its region, whether it sits in a CDR, and the published source of the rule
Per humanization
- humanized sequence: the same domain with its framework residues replaced by the ones an antibody language model scores highest for a human antibody, the original CDRs kept
- each change: its position in the numbering, its region, the parental and humanized residue, and the model's probability for each of the two at that position
- identity of the humanized domain to the one you started from, and how many positions changed
- what a further pass would change, scored on the humanized sequence rather than the original
Per CDR graft
- the closest human germline V and J genes, and the four runners-up for each
- the grafted sequence: that germline's frameworks carrying this antibody's CDRs, with the positions that changed marked
- identity of the grafted domain to the one you started from
Per paired molecule (this chain with a partner chain from the project, as a Fab or an IgG)
- molecular weight of the whole molecule
- isoelectric point and net charge at the pH you set
- extinction coefficient at 280 nm and the A280 of 1 g/L, with cysteines reduced and with every cysteine pair formed into a cystine
The variable domain's own molecular weight, isoelectric point, net charge and GRAVY are shown beside its map, which can also plot any ProtScale residue scale along the residues.
Per run: every profile HMM hit over the threshold, including hits to chain types you excluded, so you can see what was found as well as what was numbered.
When you'd use this
- You have a heavy or light chain and need its CDRs in a named scheme for a paper, a patent or a humanization design.
- You want to know which germline an antibody came from and how far it has matured.
- You are choosing between candidate antibodies and want the chemical risks inside their CDRs listed before anything goes into a vial.
- You need a numbering table to hand to a structure or modelling tool that expects Kabat or Chothia.
Controls
- Target: the selection, a Feature (coding features first, translated with the Genetic code you pick), or a pasted Antibody or TCR chain (residues or coding DNA).
- Scheme: IMGT, Kabat, Chothia, Martin (enhanced Chothia), AHo or Wolfguy. This numbers the table and the CSV; it does not move the CDRs.
- CDR definition: IMGT, Kabat, Chothia or North. Each definition reads its borders in its own numbering (North in Chothia's), so the same chain can have CDRs of different lengths: Kabat's CDR-H1 is shorter than Chothia's, and North extends several CDRs at both ends. Kabat, Chothia and North define antibody chains only, so a T-cell-receptor domain keeps IMGT's CDRs and the panel says so. Liabilities are always placed by IMGT region.
- Chain types and species: which profile HMMs may claim a domain and which germline sets are searched.
- Minimum bit score: a domain must score at least this much to be numbered (80 by default).
- Constant region identity: the domain map names a chain's isotype (IgG1, kappa and so on) only where a constant domain is at least this identical to its IMGT reference (0.6 by default). Raise it to accept only a close match; when nothing clears it, the map says so.
- Assign germline V and J: on by default. The closest IMGT germline by identity over the aligned positions, with J from the same species as V.
- Liabilities: which rules to report, and CDRs only to report just those starting inside CDR1, CDR2 or CDR3.
- CDR grafting: the Human V germline and Human J germline to graft onto (Closest to this chain, or ones you name), the germline rank (1 takes the closest, 2 the second closest, to try another framework), and Rank on frameworks only, which chooses the germline by framework identity since the CDRs are replaced anyway.
- Physicochemistry: the pH charges are read at, the partner chain (heavy for a light chain, light for a heavy one), and the format, Fab or IgG.
- Humanization: Sapiens passes (each one re-scores the previous output; one is BioPhi's default), Humanize the CDRs too, and Keep the Vernier zone, which holds the parental residues at the 14 to 16 Kabat positions under the CDR loops that shape them.
Kabat, Chothia, Martin and Wolfguy do not number T-cell-receptor chains, and cannot place some rare insertions. When that happens the panel says which domain was refused and why, and still shows its IMGT numbering, CDRs and liabilities.
The science
Each domain is found by scanning the protein against profile hidden Markov models built from IMGT's germline V and J genes, one per species and chain type, with HMMER's scoring. The best hit fixes the chain type and species; its alignment to the model's 128 match states is the IMGT numbering, and the other schemes are derived from that alignment by each scheme's published rules for where insertions go.
Humanization uses a masked language model trained on human antibody repertoires. Given a variable domain it reports, for every position, how likely each of the twenty amino acids is at that position in a human antibody; the humanized sequence is built by taking the most likely residue in the frameworks. The CDRs are put back as they were, because they are what binds the antigen and the model has no way to know that. Keeping the Vernier positions as well is the more conservative choice: those residues do not touch the antigen but they hold the loops in place, and changing them is a known way to lose affinity while the CDRs themselves are untouched.
CDR grafting is the other, older route to the same goal, and the tool offers both. Instead of proposing residues one at a time, it finds the human germline V and J genes closest to your domain, joins them into one framework, and puts your CDRs onto it. The result is a sequence whose frameworks a human being actually carries, which is what most approved humanized antibodies are. It usually changes more positions than the language model does, and keeping the Vernier zone matters more here for the same reason.
This says what a human-like version of your sequence looks like. It is not a measure of how human your sequence already is: that is a different question, answered by comparing its peptides against the prevalence of those peptides in sequenced human repertoires, and it needs a database far too large to run in a browser. A small number of changes means the model has little to suggest, which for an already-humanized antibody is the expected answer, not a score.
The liability rules are sequence motifs taken from the literature, not predictions of what will happen in a particular formulation. A motif in a CDR is worth a closer look; a motif that is buried, or flanked by residues that slow the reaction, may never react. Treat the list as places to look.
Worked example
Open the Antibody numbering sample project. It holds the three chains of the trastuzumab (Herceptin) Fab bound to HER2, from PDB entry 1N8Z.
- Open the heavy chain. One human heavy-chain domain is found over residues 1–120, and CDR1, CDR2 and CDR3 are drawn on the sequence.
- Turn on CDR only. The heavy chain shows five CDR liabilities; the light chain shows one.
- Compare them with the bench. Harris et al. (2001) separated seven charge forms of this antibody and traced them to three modified residues: deamidation of light-chain Asn30, isomerization of heavy-chain Asp102 (the low-potency form), and deamidation of heavy-chain Asn55. All three are in the list, at CDR-L1, CDR-H3 and CDR-H2. The other three matched a rule but were not reported as modified, which is what a sequence rule means.
- Humanize the light chain. It changes four framework positions and leaves the domain 96.3% identical, which is what a humanized therapeutic should give: trastuzumab's frameworks are already human, so the model has almost nothing to move. Each change lists its two probabilities, so you can see how weakly or strongly the model preferred the human residue.
- Graft the light chain's CDRs instead. The closest human germline is IGKV1-39, joined to IGKJ1, and the graft is 95.3% identical to the parental domain. That germline is the right answer twice over: it is the acceptor framework trastuzumab was actually built on, and it is also the gene the germline assignment above reports for this chain, by a different calculation.
- Open the HER2 chain. It is not a variable domain, nothing scores above the threshold, and the panel says so rather than numbering it.
Limitations
- Numbering needs a variable domain. Constant domains, and heavily engineered scaffolds that no longer resemble a germline, are not numbered.
- Germline assignment reports the closest gene in the species you allow; it does not model somatic hypermutation or D-gene usage.
- Liabilities are motifs. Their reaction rates depend on structure, flanking residues, pH and temperature, none of which a sequence scan can see.
- Humanization is a sequence proposal, not a design. The model sees no structure, no antigen and no affinity data; a humanized framework can still lose binding, and every proposal is a candidate for the bench rather than a result.
- Humanness itself is not scored, for the reason given above.
- CDR grafting replaces the frameworks wholesale. Framework residues that support the loops are lost unless you keep the Vernier zone, and even then a graft can lose affinity; grafted antibodies are normally a starting point for back-mutation at the bench.
- Human germlines are available for heavy, kappa and lambda chains only.
- The model was trained on heavy and light antibody chains. T-cell-receptor domains cannot be humanized, and the panel says so instead of scoring them against the wrong model.
- Domains longer than 142 residues are refused: the model has no position beyond that, and a truncated answer would be worse than none.
Export
Humanization CSV: one row per changed position, with its numbering, region, both residues and both probabilities. Numbering CSV: one row per numbered residue: domain, chain, position in the chosen scheme, residue, residue index, region and the CDR definition that placed it. Liabilities CSV: one row per hit, with its motif, span, IMGT positions, region, CDR flag and source.
Automation
Available as the number_antibody, antibody_liabilities, humanize_antibody,
graft_antibody_cdrs and antibody_molecule workflow nodes, with the same
settings as the panel, so a batch of chains can be numbered and screened in one run. The scientific
copilot can call both by name.
Provenance
Numbering, chain typing and germline assignment match ANARCI's output exactly on every chain of its PDB benchmark, under all six schemes. CDR borders under all four definitions match abnumber's on every antibody chain of the same benchmark, except in two places where abnumber is wrong and this tool is corrected: a lambda residue numbered Kabat or Chothia 108 stays in FR4 instead of stopping the run, and North borders are read straight from each residue's Chothia number, so they are not shifted by a residue. The profile HMMs and germline sequences are built from IMGT (CC BY 4.0). Each liability rule names its source:
- Asn deamidation and Asp isomerization: Lu et al., mAbs 11 (2019)
- N-linked glycosylation sequon: PROSITE PS00001
- Asp-Pro cleavage: Vlasak & Ionescu, mAbs 3 (2011)
- Met and Trp oxidation: Hensel et al., PLoS One 6 (2011)
- the worked example: Harris et al., J Chromatogr B 752 (2001)
Humanization reproduces the published Sapiens model exactly: the residue it proposes at every position agrees with the reference implementation on every antibody chain of the same benchmark, and the full probability tables agree to within float32 rounding. The model and the humanization procedure are those of Prihoda et al., mAbs 14
(2022).Molecule properties match Biopython's ProtParam on every heavy and light chain pair of the same benchmark, as a Fab and as an IgG; each chain keeps its own ends, so the molecule is not the chains joined end to end.
CDR grafting reproduces abnumber's: the germline it picks, the merged framework and the grafted sequence agree on every antibody chain of the same benchmark. The human germline sequences are IMGT/GENE-DB's (CC BY 4.0).
Related
Feeds it: any coding feature or selection on the canvas, and Protein Analysis for the same chain's mass, pI and hydropathy.
Follows it: Protein Domains, to see the constant domains around the variable one · Protease Digest, to check that a liability you care about lands on a peptide you can measure.
Protease Digest
Cut a protein with any of forty-nine proteases and chemicals and read the peptides it would produce, with their masses and m/z, without leaving the construct they came from.
Mass Spectrometry
Weigh a peptide, list the fragment ions it breaks into, score a measured MS/MS spectrum against it, estimate how many identifications are false, and infer which proteins they came from and how likely each is to be present.