Skip to content
AbilityBench

Free, 48 trials across 4 distances

Peripheral vision test that reports accuracy at angles it can actually name

Four groups of three rings flash for 150 ms around a cross you have to keep looking at, and one group has a break in its middle ring; you name which side it was on. Because the page knows your screen scale and your viewing distance, each group sits at a stated eccentricity rather than somewhere in the corner, so the output is accuracy at four distances with a confidence interval on each. This is not a visual field examination and cannot be used as one: it is free, it stores nothing, and anybody worried about losing part of their field needs an optometrist rather than a browser tab.

  • 100% free
  • No signup
  • 48 scored trials
  • 150 ms flash
  • One eye or both

Four groups of three rings flash around a cross for 150 ms and one ring in one of the groups has a break in it. You say which group with an arrow key while looking at the cross the whole time — 48 scored trials at four distances from the middle, about two minutes.

Set the scale with a card and a tape measure

Lay any bank card, driving license or national ID card flat on the screen and drag the slider until the dashed outline is exactly as wide as the card. All of them are 85.6 mm across, so the card in your wallet is a ruler you already own.

Every distance below is an angle at your eye rather than a number of pixels, so the run is comparable with your own next one on a different screen. At 36.3 pixels per degree this window carries the rings out to 0.0° before it runs out of glass.

3.79 pixels per millimeter, 36.3 pixels per degree, device pixel ratio 1.00. Both inputs enter as straight multipliers, so a distance out by a tenth puts every degree out by a tenth in the same direction.

That is one display, held still so you can see what it is: the group on the right is the one with the break. In the run it is gone in 150 ms and covered by a mask, and the break is never in a flanker — only ever in the middle ring of a group.

How you are going to sit

One eye at a time is the clinical arrangement, and it is the only one that could ever show a difference between your two eyes — with both open, whatever one eye misses the other supplies, which is exactly why a field loss can go unnoticed for years. With one eye covered, the side toward your nose is also fenced in by your own face, so the two halves of a one-eyed run are not equivalent.

This window reaches only 0.0°, which is too close to the middle for the result to mean anything. Move the screen nearer, take fullscreen, or open the page on a larger display: at 25 cm this same box would reach 4.0° — and the calibration has to be set again at the new distance.

How to run the eccentric detection block

Calibrate, decide how you are sitting, then answer with your eyes still on the cross.

  1. Give the page a scale and a distance

    The card outline and the viewing distance are what turn a group of rings into a group of rings at 9.4 degrees. Set them once and the four test distances are computed from how much room the window has: they land at 30, 50, 75 and 100 percent of the largest eccentricity your window can reach, and full screen is worth taking because that ceiling is set by the shorter half of the window, not by your eyesight.

  2. Decide whether you are covering an eye, and commit to it

    Both eyes open is the everyday arrangement and the one that matches how you use a road. One eye covered is the clinical arrangement and the only one in which the two eyes can be compared, because with both open whatever one misses the other supplies. A one-eyed run is also lopsided by anatomy — your nose and brow fence in the inner side — so do not read a left-right difference from a single covered-eye run.

  3. Keep your eyes on the cross and answer with the arrow keys

    The display is gone in 150 ms and a mask follows it, which is deliberate: a saccade cannot be planned and completed inside that window, so a visitor who starts fixated cannot cheat by looking. Press the arrow key for the side that had the break, or tap the on-screen button. Looking straight at each group as it appears feels like it should help and does the opposite, and the results panel names that as the first thing to suspect when nothing comes out above chance.

Technical specifications

Trials48 scored — 12 at each of 4 eccentricities — plus 8 optional practice trials at the closest distance with the answer shown, excluded from every figure
Eccentricities tested30%, 50%, 75% and 100% of the largest angle the window can place a group at, with a ceiling of 24° that a browser window almost never reaches. Measured on a 1500 × 1000 window at 55 cm, the four levels came out at 2.3°, 3.9°, 5.8° and 7.7°: the governing dimension is half the square arena, because running the sideways positions further out than the vertical ones would put the four positions at different distances
Stimulus4 groups of 3 rings, one group per side of the cross, shown for 150 ms and then covered by a mask. Exactly one group has a break, always in its middle ring and never in a flanker, at one of 4 diagonal orientations
Crowding, not fadingFlankers stay 1.4° from the target ring at every eccentricity while the ring itself grows from 0.42° by 0.055° per degree of eccentricity, so the difficulty comes from interference between neighbors rather than from the target getting too small to see
Task and chance levelA 4-alternative forced choice on which side carried the break, so a guesser scores 25%. The break subtends 20% of the ring diameter, which keeps it resolvable at every distance the run reaches
ResponseArrow keys or four on-screen buttons, within 3000 ms of the flash. Answer times are taken from the frame that painted the rings, reported over correct trials only, and trimmed at 3 scaled median absolute deviations of each row's own median
What the headline figure isThe furthest of the 4 distances whose 95% Wilson interval on accuracy still clears 25%. Wilson rather than a plain proportion because it does not collapse to a point at 12 out of 12, which on twelve trials would be a false claim of certainty
The reference it is read against≈ 100 degrees outward and ≈ 60 degrees toward the nose from one eye — Extent of the monocular visual field measured by perimetry. A 27-inch monitor at arm's length subtends roughly 50° in total, so the run reports what it reached and never a field extent

Frequently asked questions

Is this a visual field test, and can it find a field loss?

No to both, and the gap between this page and perimetry is large rather than technical. A Humphrey or Goldmann examination seats you at a bowl of controlled luminance, occludes one eye properly, monitors where your eye is actually pointing with a camera or a repeated blind-spot check, and probes dozens of positions out to the edge of the field — specifically because the losses that matter are the ones the patient has not noticed. This page has a flat panel of unknown brightness, no idea where your eye is pointing, and a reach bounded by your browser window, which covers a small fraction of the area a perimeter covers. If you have any reason to think part of your vision is missing, book the examination; a good score here is not reassurance and a bad one is not a diagnosis.

Why three rings at each position instead of one dot?

Because a single high-contrast dot at 10° is visible to essentially everybody, so a test built on one measures nothing and reports 100% for every visitor. What peripheral vision is genuinely poor at is not detecting things but telling one thing apart from its neighbors: past the fovea a target flanked closely enough dissolves into texture while remaining perfectly visible. That is crowding, and it is the effect this page uses to produce a fall-off with distance. Bouma (1970), Interaction effects in parafoveal letter recognition, Nature, put the critical spacing at roughly half the eccentricity, which is why flankers fixed at 1.4° barely interfere close to the cross and interfere heavily far from it.

Why does everything vanish after 150 milliseconds?

The exposure is the only fixation control a browser has. A saccade to a peripheral target cannot be planned and executed inside 150 ms, so someone who begins the trial with their eyes on the cross physically cannot have looked at the rings while they were on screen; the mask that follows stops the afterimage being examined at leisure afterwards. A camera watching your eye would be better and is not available here, which the page says rather than implying the fixation was verified.

How far out can this reach on my screen?

Less far than the word peripheral suggests, and the page computes the figure rather than assuming it. The arena is square and half its height has to hold the furthest group, so a 1500 × 1000 window at 55 cm reached 7.7° on our own measurement — single digits, not the eighty or ninety degrees a perimeter probes. Sitting closer buys angle, at the cost of the near levels bunching together; full screen buys a little more, and a physically larger display buys the most. What none of it buys is the outer field, which is why the run prints how far it actually got and what fraction of the outward reach that was, instead of calling 8° the edge of anything.

Why do the rings get bigger the further out they go?

So that the test keeps measuring crowding rather than quietly turning into an acuity test. Acuity falls steeply with eccentricity, so a ring that is comfortable at 3° is unresolvable at 20°, and a run using one size would show a fall-off that is mostly about the size of the gap. The growth rate here — 0.42° plus 0.055° per degree of eccentricity — is chosen for that purpose and is deliberately not anybody's published cortical magnification factor, because borrowing one would imply a scaling this page has not verified on your display.

Should I cover one eye, and why did my two eyes differ?

Cover one if you want the two compared, and expect the halves of that run to be uneven for reasons that have nothing to do with your retina. One eye reaches much further outward than inward — your nose and brow are in the way — so the inner positions are fenced in by your own face, and the two sides of a covered-eye run are not equivalent measurements. With both eyes open the two fields overlap and each one covers the other's weaknesses, which is comfortable, ecologically correct, and exactly why a genuine one-sided loss can go unnoticed for years.

My accuracy was higher at the furthest distance than the one before it. Is that possible?

It happens routinely on twelve trials and it is why every row carries an interval. Twelve trials means each answer is worth eight percentage points, so three lost to a blink move a row by a quarter and two rows whose intervals overlap have not been separated by this run. Look at whether the intervals overlap before you read a reversal as real. The other candidate is that you started looking at the groups on the later blocks, which raises accuracy at every distance at once and makes the ordering meaningless — the median answer times are the tell, because a run taken with the eyes is slower than one taken from the periphery.

Crowding, and the distance between this page and a perimeter

Peripheral vision is not a blurry version of central vision, and the difference matters for what a test should ask. Detection barely falls off: a bright dot 20° out is easy for everybody, which is why so many browser tests of this name return a number near 100% and mean nothing by it. What collapses away from the fovea is the ability to separate a target from what is next to it. Bouma (1970), Interaction effects in parafoveal letter recognition, Nature, gave the rule of thumb still in use: the interference zone around a target scales with eccentricity, at roughly half of it, so two features that are comfortably distinct at 2° are inside each other’s zone at 15°. This page is built on that. The flanker spacing is held at 1.4° while the eccentricity grows, so the same physical arrangement moves from harmless to overwhelming as the group moves out, and the fall-off in the table is interference rather than the target dimming or shrinking below acuity.

The measurement needs the same two things the blind spot test needs — a screen scale and a viewing distance — and shares its calibration panel for the same reason: an eccentricity is not a number of pixels until somebody supplies both, and a page that skips them is reporting a label rather than an angle. It also inherits that page’s honesty about reach. The monocular field extends about a hundred degrees outward, and a large monitor at arm’s length subtends roughly half that in total, so no browser can probe the outer field at all. The run therefore says how far it got and what fraction of the outward reach it sampled, instead of dressing four positions inside a window up as a field map. If you want to compare your two eyes, run this once per eye — and note that which eye you sight with, measured by the dominant eye test, has no bearing on which one identifies a crowded target further out; they are unrelated traits that get conflated constantly.

The hardest part of the task is not visual. It is not looking at the thing that just appeared, which is a reflex with a latency of about 200 ms and an unhelpful eagerness to fire — the same class of problem as holding back a prepotent response in the Stroop test, where the answer you must not give is the one already loaded. Two design decisions follow from it: the flash is short enough that a saccade cannot land inside it, and the practice block exists so that the trials in which you were still learning to sit still are not in the numbers. Where a browser genuinely cannot control the display, this site says so rather than compensating with a formula, and the two neighbors most affected by that are the contrast sensitivity test, which would need your panel’s luminance, and the color perception test, which would need its white point.

This is a measurement exercise, not a clinical assessment. It reports what you did on this page against a stated reference and nothing more — it cannot establish glaucoma, a hemianopia, or any other loss in your visual field. Only a qualified professional, working with more than a browser, can make that judgment.

A weak row in this table is far more likely to be a wandering gaze, a small window or a blink than anything about your retina, and a strong table cannot rule a loss out, because the positions probed here are a handful inside the central field rather than the dozens across the whole of it that an examination uses.

A reaction time here is the interval between the frame that painted the stimulus and the timestamp the browser attached to your key, both read from the same monotonic clock. What neither can see is the display pipeline behind it, so on a 60 Hz screen roughly 16 ms of every figure below is the machine rather than you. That is the timing floor: two numbers closer together than that are the same number, and this page reports no precision it cannot support.

The answer times in the table are secondary here — accuracy is the measurement, and the times are printed as a difficulty signal, since the row where you began to hesitate is usually the row above the one where accuracy fell. They are taken over correct trials only, and each row is trimmed at three scaled median absolute deviations of its own median so that one interrupted trial cannot set the figure.

Where the 48 answers go

Every number on this page is worked out by JavaScript running in the tab you are reading it in. Your answers, your reaction times and your score are never uploaded, logged or kept — which is also why the test carries on working after you disconnect from the network, and why nothing here can be held back behind an email address.

Each trial leaves one record in this tab — the eccentricity, the side that had the break, the key you pressed and the interval between the paint and the press — and the whole array is scored where it sits. It is never written to storage and never leaves the page, so closing the tab ends the run permanently. The copy button is the way out: it produces the per-distance table, the intervals and your calibration as plain text you can paste anywhere.