Contrast Sensitivity, Explained
After reading this you will understand what a contrast threshold is, how a two-down-one-up staircase finds it, and how to read the Michelson percentage the test reports without over-trusting a number that depends on your screen.
What the test measures
Visual acuity answers one question: how small can a shape be before you cannot read it? An eye chart shrinks the letters. Contrast sensitivity answers a different question: how faint can a pattern be before it vanishes into the background gray? The letters can stay large, but you fade them toward the background until they disappear.
This matters because the world is often low-contrast. A car at dusk, a curb in fog, a face across a dim room, gray text on a slightly-less-gray web page: none of those are tests of fine detail. They are tests of faint detail. Two people can both read the 20/20 line and still differ by a factor of three in how much fog they can see through.
The stimulus here is a Gabor patch: a soft set of stripes that fades to background gray at the edges. It is the standard target in vision science because it has one dominant stripe width and no hard borders to give it away. Each trial shows the patch in one of four gray boxes. You click the box that holds it. Simple task, but the contrast of the stripes changes trial by trial, closing in on the faintest pattern you can still find.
When to use it, and when not
Use it as a repeatable self-check on one device. If you run it on the same monitor, at the same brightness, in the same room light, week to week, the number is comparable to your own earlier numbers. That makes it useful for spotting a drift, for comparing your left eye to your right, or for showing students how a perceptual threshold behaves.
Do not use it to compare yourself to a friend on a different laptop, and do not read a clinical meaning into it. A phone at 30% brightness in a sunlit kitchen and a calibrated monitor in a dim room will report thresholds that differ by more than any difference between two healthy pairs of eyes.
This is a screen-dependent estimate, not an eye exam. If your real-world vision has changed, if lights show halos, or if faint things have become hard to see, that belongs to an eye-care professional, not to a browser tab.
The contrast formula and why 71%
The patch has a brightest stripe and a darkest stripe. Michelson contrast compares them:
Here L_{\max} is the luminance of the brightest part of the pattern and L_{\min} the darkest. When the stripes are pure black and white, L_{\min} = 0 and C = 1, reported as 100%. When the stripes are barely different from the background, L_{\max} and L_{\min} are close, and C falls toward zero. Healthy vision on a decent screen often detects patterns below 1%.
Your threshold is not a hard wall. Near it, whether you see the patch is a matter of probability. Plot the probability of a correct four-box choice against contrast and you get an S-shaped psychometric curve. The test aims at one point on that curve.
Why that particular point? Because the rule "drop the contrast after two correct answers, raise it after one miss" is self-balancing. At the target contrast the chance of two correct answers in a row equals the chance of a miss, so the staircase stops drifting. Solve p^2 = 1 - p and you get p \approx 0.707. That is where a two-down-one-up staircase parks itself: the contrast you get right about 71% of the time.
Reproducing a demo run
Start the test with its defaults and imagine a run that behaves like typical healthy vision. The staircase starts high and steps down. A step here means the contrast is multiplied or divided by a fixed factor, so the numbers move in even ratios rather than even differences.
- Trial 1 to 2: contrast at
20%, two correct. Contrast drops to12%. - Trial 3 to 4:
12%, two correct. Drops to7%. First downward move continues. - Trial 5 to 6:
7%, two correct. Drops to4%. - Trial 7:
4%, a miss. Contrast rises to7%. Reversal 1. - Trial 8 to 9:
7%, two correct. Drops to4%. Reversal 2. - Trials continue bouncing between roughly
3%and5%, producing reversals 3 through 8.
Suppose the last six reversal contrasts are 4%, 3%, 5%, 4%, 3%, 4%. The reported threshold is their average:
So this run reports a threshold near 3.8%. The sensitivity score is the reciprocal of the threshold as a fraction: 1 / 0.03833 \approx 26.1. A lower threshold means a higher sensitivity score.
Watching the staircase converge
The chart below shows the contrast on each trial of the run above. Notice the early trials plunge, then the values settle into a narrow zigzag around the threshold. The reported number comes from that flat zigzag, not from the early plunge, which is why the first few trials do not need to be accurate.
Reading your result
Two numbers come out: the threshold as a Michelson percentage, and a sensitivity score that is roughly its reciprocal. Lower threshold and higher sensitivity both mean the same thing: you can see fainter patterns.
| Threshold | Sensitivity score | Reading |
|---|---|---|
| 0.5% | 200 | Excellent for a screen test |
| 1% | 100 | Strong, common in healthy vision |
| 3% | 33 | Typical for a bright room or a phone |
| 8% | 12.5 | Likely dominated by glare or setup |
| 20% | 5 | Something is wrong with the setup, or the task was misunderstood |
Treat the boundaries as soft. The gap between 0.5% and 1% is a factor of two in contrast but often just a matter of screen brightness. The number you should trust is the direction of change on your own device, not the absolute value.
Common mistakes
The largest error is guessing. In a four-box task, blind guessing is right one time in four, so a stubborn guesser drives the staircase down to contrasts they cannot really see, then keeps missing, and the reversals spread wide. If you truly cannot find the patch, that miss is the honest answer. Let it push the contrast back up.
Changing anything mid-run breaks the estimate. Screen brightness, room light, viewing distance, and even glasses smudges all shift the threshold, so a run should happen under one steady condition. A dirty screen scatters light and raises L_{\min}, which lowers the effective contrast of every patch and inflates your reported threshold.
Distance matters because the Gabor patch has a fixed stripe width in pixels. Move closer and the stripes subtend a larger visual angle, which changes the spatial frequency you are being tested at. Pick one comfortable distance and keep it.
Do three runs and compare. If they land within about 20% of each other, your setup is stable and the middle value is a fair self-check. If they scatter widely, fix the room light and screen brightness before trusting any single number.
Related tests on this site
Contrast sensitivity is one slice of perception. If you want to probe the near-threshold edge of another sense, the Hearing Frequency Test uses the same idea of finding a faint limit, in pitch rather than contrast. For color rather than luminance, the Color Discrimination Test shrinks a color difference until you cannot spot the odd tile, which is a staircase in disguise.
If you are more interested in how fast you respond than how faint you can see, the Reaction Time Test and the N-Back Working Memory Test measure speed and working memory instead.
Frequently asked questions
Why four boxes instead of just asking "do you see it"?
A yes/no task lets people set their own private bar for saying yes, which contaminates the threshold. A forced choice among four boxes fixes the guessing rate at 25% and makes the staircase math clean. You always have to pick a box, so honesty is easy.
Why does the test end after eight reversals?
Each reversal is one sample of where your threshold sits. The first few reversals happen while the staircase is still finding the region, so they are discarded. Averaging the last six of eight reversals gives a stable estimate without demanding a hundred trials.
My threshold got worse on my phone. Is my vision failing?
Almost certainly not. A phone screen is usually brighter and viewed at a fluctuating distance, both of which move the number. Compare only runs on the same device under the same conditions.
What is a sensitivity score, exactly?
It is the reciprocal of your threshold expressed as a fraction. A threshold of 2% is a fraction of 0.02, so the score is 1 / 0.02 = 50. Higher is better because it means fainter patterns are still visible.
Does room lighting really change the result that much?
Yes. Ambient light reflecting off the screen raises the darkest visible level, which shrinks the effective Michelson contrast of every patch. A bright lamp behind you can double the threshold the test reports. Test in steady, moderate light.