This online tool estimates your contrast sensitivity function (CSF) — how faint a striped pattern (a sine-wave grating) you can detect at different sizes, or spatial frequencies, measured in cycles per degree – cpd. It uses an adaptive staircase to find your near-threshold level and reports thresholds and contrast sensitivity by frequency.

Contrast Sensitivity Test

Press Start Test. Choose the stripe direction: Vertical, Horizontal, or Diagonal. The test adapts difficulty and estimates your threshold at several spatial frequencies (cycles/degree).

Optional: quick PPI/distance check (for more precise CSF)
Estimated PPI

Tip: hold a standard bank/credit card to the screen and match widths.

Idle

Your thresholds and contrast sensitivity (1/threshold) will appear here after the test, with interpretation.

Share this?
WhatsApp X Telegram Facebook LinkedIn Reddit

How to use it (quick)

  1. Set your screen at a comfortable brightness in normal room light.
  2. Sit about an arm’s length from the screen and click “Start Test.”
  3. For each trial, choose the stripe direction: Vertical, Horizontal, or Diagonal. If unsure, guess.
  4. When finished, read the Results section: per-frequency thresholds, contrast sensitivity values, a small CSF plot, quality flags (e.g., floor/ceiling/unstable), and a plain-English summary.
  5. Optional: expand “quick PPI/distance check” to improve geometric accuracy (used to hit exact cpd on your display).

What the results mean

You’ll see a table and a curve. Each row shows spatial frequency (cpd), your threshold contrast (Michelson), and the resulting contrast sensitivity (CS = 1/threshold).

Higher CS means you can detect fainter stripes at that size. Most people show a band-pass shape that peaks in the mid-frequencies (~2–4 cpd) and drops at very low and very high cpd. The summary highlights your peak and compares low/mid/high bands relative to your own peak.

Why this test is meaningful (under the hood)

  • Sine-wave gratings are the standard stimulus for CSF measurement; the clinical CSV-1000 uses 3, 6, 12, 18 cpd, which is offered here in “Clinical” mode. “Extended” mode adds very low and very high cpd for a fuller curve.
  • Contrast is computed as Michelson contrast ( (Lmax − Lmin)/(Lmax + Lmin) ), the appropriate metric for periodic gratings.
  • Thresholds are estimated with a 2-down/1-up staircase that converges near ~71% correct. After several reversals, step sizes tighten to probe very near threshold. Randomized phase and faint noise reduce display artifacts.
  • We constrain rendering with a small visible contrast floor so the pattern never becomes literally uniform (prevents “it vanished” artifacts), and we flag any floor/ceiling hits in the results.

Contrast Sensitivity Test Online For Free

Tips for consistent measurements

  • Keep the viewing distance steady; use the optional PPI/distance check if you want tighter cpd accuracy.
  • Use normal room lighting; avoid glare and extreme brightness.
  • If a row is flagged “unstable,” rerun—the threshold didn’t have enough reversals yet.
  • Glasses/contacts: test with your usual correction for the distance you use.

Common questions

“What is cpd?” Cycles per degree is how many light-dark pairs fit into one degree of your visual angle. Higher cpd = finer stripes.

“Why not letters?” Letter charts mainly probe high spatial frequency at high contrast (acuity). Contrast sensitivity covers all sizes and low contrast too, which often explains real-world “I can see 20/20, but…” complaints.

“Are my numbers ‘normal’?” Populations vary with age and lighting; the classic CSF peaks in the mid-frequencies and is lower at the extremes. If you’re worried about your results or notice asymmetry/changes, consult an eye-care professional.

Limitations & good practice

  • Consumer displays vary; precise calibration (luminance linearity, gamma) is not enforced here.
  • Ambient light, fatigue, and attention affect thresholds. Repeatability improves with practice and consistent conditions.
  • This tool complements, not replaces, professional testing (e.g., CSV-1000/2000, Pelli-Robson, laboratory CSF).

Sources & further reading

CalcuLife.com