Home / Science / Molecular and cell biology / Microbiology / Gram stain and biochemical test keyTool #197

Gram stain and biochemical test identification key: step by step, ranked results and a printed key

A teaching identification key for common bacteria groups: answer one test at a time (Gram stain, shape, catalase, oxidase, coagulase, lactose, motility and more) and watch the candidates narrow, tick the results you have and see the groups ranked by fit, or print a numbered dichotomous key. Load your own key as CSV or JSON. For teaching, not clinical identification.

Keep it one tap away for everyday use.

Bookmark Gram stain and biochemical test key?

Press Ctrl + D now. Your browser opens its own bookmark box, where you choose the name and folder.

  1. Key table
  2. Do a test
  3. Candidates
  4. Best fit
Nothing is uploadedWorks offline once open

For teaching only. This key is not a clinical or diagnostic identification. Real identification needs pure cultures, controls, a validated system and a trained laboratory. The example table is simplified and written by fibub; real strains vary.

The key

Results: + positive, - negative, v variable (strains differ), blank for a test not used on that group. Optional rows + means and - means name the two outcomes of each test, and a Note column adds a note. Lines starting with # are skipped. Up to 300 groups and 60 tests; files up to 2 MB.

What it does

Microbiology classes identify bacteria with a chain of quick tests: the Gram stain, the shape under the microscope, then catalase, oxidase, coagulase, lactose on MacConkey agar, motility and so on. This page turns a table of groups and their expected results into three ways of working:

  • Step by step. The page asks one test at a time. Answer positive, negative, or Not done, skip, and it shows your path, how many groups are left after each answer, and which groups were ruled out by which test. You can also answer a different test from the list.
  • Results (a results table). Set the results you already have and every group is ranked: fewest conflicting results first, then by fit, which is (agree + half of variable) divided by the results compared. A test that is not used for a group (blank in the table) is left out of that group’s fit.
  • Printed key. The whole table written out as a numbered dichotomous key (1a, 1b, go to 2 …), ready to print or hand out.

Choose tests sets the order: In the table’s order asks the first test, left to right, that still separates the groups, which follows the usual lab order (Gram stain first). Fewest steps asks the test that leaves the fewest groups on average.

A group with a variable result (strains differ) or a blank result stays on both sides of that test, so it is never ruled out by it.

This page is for teaching only. It is not a clinical or diagnostic identification. Real identification needs pure cultures, controls, validated kits or methods and a trained laboratory. The example table is simplified and written by fibub; real strains vary.

How to use it

  1. Key table. The example loads by itself. Edit it in the box, or open your own CSV, TSV or JSON key.
  2. Do a test. In Step by step, press the result you see for the test shown.
  3. Candidates. Watch the list of groups still possible shrink. Use Back one step if you made a mistake.
  4. Best fit. Press Rank in the results table to see every group ranked against your answers, and download the ranking (CSV), the printed key (text) or a report as an image, PDF or Word file.

Your own key

One row per group and one column per test. Use +, -, v (variable) or leave the cell blank (not used). Words such as pos, negative or n/a also work. Two optional rows, starting + means and - means, name the two outcomes of each test (for shape, Cocci and Rods). A column called Note adds a short note. Download key (CSV) or (JSON) gives you a file to start from.

Worked example

With the example key, answer Gram-negative (pink): 9 groups are left. Then Rods leaves 8 (Neisseria is out), Oxidase: no colour leaves 6, Lactose: pink colonies leaves 3 (E. coli, Klebsiella and Enterobacter), Motile leaves 2, and Indole: red ring leaves 1: the page shows Matches: Escherichia coli.

In the results table, Use example results sets seven results (Gram-negative rod, oxidase negative, lactose negative, motile, urease negative, H2S positive). The page shows Best fit: Salmonella (7 of 7 results agree). Proteus comes second at 85.7 %, because it agrees on six but conflicts on urease.

The printed key has 20 couplets in table order and 19 with Fewest steps.

Tips

  • Always confirm with more tests than the key needs. One wrong Gram stain sends you down the wrong half of any key.
  • Add the tests your class uses, and mark results that differ between strains as v rather than guessing.

FAQ

Why does a group appear twice in the printed key? It has a variable or blank result for a test in its path, so it goes down both branches.

Is anything sent anywhere? No. Everything runs in your browser and nothing is stored.

Where the numbers come from

  • The example key (19 groups, 15 tests) is written by fibub from general textbook microbiology and simplified for teaching; it is not copied from any published table, and real strains vary. Edit it or load your own.
  • The key builder, candidates and ranking are written by fibub and checked in the tests against an independent Python version on the example and 60 random keys.
  • A key file you open is read on the page only. It is never uploaded or stored.

Standard scientific values, such as constants, atomic weights and melting points, are facts found in every textbook; we name where ours were checked. If you are an author or publisher and want a value, a credit or a table changed or removed, tell us and we will act quickly.

Last updated 2026-11-09.

Related tools

Stock solution and media recipe scaler #183 Type a recipe once, as final concentrations or amounts per litre, and scale it to any volume or to a 5× or 10× stock. Get the mass to weigh for every solid (from molarity and molar mass), the volume of every stock to add, a warning when a stock is too dilute, and a printable recipe card. Hemocytometer cell counter #36 Tally live and dead cells square by square with on-screen buttons or the keyboard. Get cells per mL, viability, the counting error, and exactly how much suspension and medium to mix to seed your plates. Plate layout designer #35 Lay out standards, samples, controls and blanks with replicates on any plate from 6 to 1536 wells. Keep the edge wells empty, then print the map or export a well list for your plate reader or liquid handler. Cell doubling time and passage planner #189 Type two or more cell counts and get the doubling time from a log-linear fit, with the growth rate, generations and a 95 % interval. Then plan the next passage: how many cells to seed per flask or well to reach a target confluence on the day you want, the split ratio, the volume to pipette and a schedule of the next passages. Growth curve and doubling time (OD600) #194 Paste time and OD600 readings for one or many cultures, take away a blank, and get the growth rate, doubling time and lag time from the exponential phase (found for you or chosen by hand), the highest OD, an optional Gompertz or logistic fit, plots on a linear or log scale, cells/mL from your own factor, and CSV and report downloads. CFU counter and plate count calculator #195 Count bacterial or yeast colonies on a photo of an agar plate (found automatically, touching colonies split, then fixed by tapping) and turn the counts from your dilution plates into CFU per mL or per g, with an exact Poisson confidence interval and a check that the plates agree. The photo stays in your browser.