Flash & Photosensitivity Checker

Screen a video for flashing that could trigger a photosensitive seizure. It measures how much the picture brightens and darkens frame to frame and counts flashes in any one-second window. Your file never leaves the browser.

Choose a Video

Nothing loaded yet. MP4, WebM, and MOV generally work. Whatever your browser can play.

Preview

What This Checks, and What It Cannot Tell You

Flashing imagery can trigger seizures in people with photosensitive epilepsy. Unlike most accessibility issues, the consequence is medical rather than inconvenient, which is why it is worth screening for deliberately rather than trusting your eye.

This tool implements the general flash threshold in the same shape the accessibility guidelines describe it. It decodes your video frame by frame in the browser, converts each frame to relative luminance, and looks for opposing transitions (a rise then a fall, or a fall then a rise) where the change is at least 10% of full luminance and the darker of the two states is below 80% luminance. It follows each small block of the picture on its own, so a gradual change over several frames counts as one transition. A matched pair of opposing transitions is one flash. It then counts flashes in a sliding one-second window and reports the peak. Flashing only counts if enough of the picture shares it: the definition ignores flashing that covers no more than a quarter of any ten-degree field of view, which the tool estimates as about 2.8% of the frame.

Three flashes in any one second is the line. More than that is the condition the guidelines treat as a failure, and the same figure appears in broadcast regulation. Treat it as a ceiling to stay well below, not a target to approach.

This is a screening aid, not a certification

A pass here is not a broadcast compliance certificate. Regulators and broadcasters use dedicated, validated analysers, and their tests model the visual field, colour, and spatial pattern more thoroughly than a browser tool can. Two limits in particular are worth knowing: the area test uses a fixed estimate of a ten-degree field (341 by 256 pixels on a 1024 by 768 screen, the estimate the guidelines give), because the browser has no idea how large the screen is or how far away the viewer sits. And red-flash detection is checked block by block against the red ratio and chromaticity change in the definition, but on a small, low-resolution sample of each frame.

Use it to catch problems early and cheaply. If your content is going to broadcast, or you have any reason to think it is marginal, get it tested properly.

Reading the numbers

Peak flashes per second is the headline. Above three in any one-second window, the content fails the general flash threshold and needs changing.

Largest changing area is the greatest share of the frame that flashed at all in any one-second window. The peak flash count only includes flashing that at least about 2.8% of the frame shares, so a small flickering element in a corner, such as a patch under that size, does not raise it. A patch just over it does, so a small area is not automatically safe.

Saturated-red flashes is the most red flashes in any one-second window, over the same area share. It is counted apart from the general flashes because transitions to and from saturated red carry elevated risk beyond their brightness, even when the luminance barely changes. The limit is three here as well. A block counts as saturated red when red is at least 80% of its red, green and blue, and a transition needs the colour to move by more than 0.2 in CIE 1976 u'v' chromaticity.

Frames sampled per second tells you how thoroughly the analysis ran. If it is well below the video's real frame rate, the browser dropped frames during playback and fast flashes may have been missed, re-run at a lower analysis speed for a more reliable result.

If it fails, what to change

Most flashing effects survive being fixed, because three variables independently affect risk and you only need to move one.

Slow it down below three flashes per second. This is the most direct fix and usually preserves the intent.

Reduce the contrast of the transition. What matters is the size of the luminance change, so alternating between two mid-tones is far safer than alternating between black and white at the same rate, and often looks better.

Shrink the affected area. Confining the effect to part of the frame rather than the whole screen reduces risk substantially.

Removing the effect entirely is rarely necessary once you know which variable to adjust. If flashing is genuinely essential to the content, put a warning at the very start, before the flashing occurs, and visible rather than only in a description, since autoplay gives the viewer no chance to read anything first.

Privacy

The video is decoded locally by your own browser and analysed in the page. Nothing is uploaded, nothing is stored, and the tool works with the network disconnected. That matters here specifically: unreleased content is exactly the kind of material people cannot send to an online analyser.

FAQ

Q: What counts as one flash?
A: A pair of opposing changes in relative luminance (a rise followed by a fall, or the reverse) where each change is at least 10% of full luminance and the darker state is below 80% luminance. A single change in one direction is not a flash. A flash only counts if at least about 2.8% of the frame shares it.

Q: Why three per second?
A: It is the threshold used by both web accessibility guidance and broadcast regulation. Risk rises sharply in a band of flash frequencies, and three per second is the conventional line below which content is treated as acceptable.

Q: My video passes. Is it definitely safe?
A: It is a good sign, not a guarantee. This is a screening aid using a simplified area and colour model, and it can only measure the frames it managed to sample. Anything heading for broadcast should be tested with a validated analyser.

Q: Why is the frames-sampled number lower than my frame rate?
A: Faster analysis speeds ask the browser to present frames quicker than it can decode them, so it drops some. Re-run at 1× or 2× for a fuller sample, slower, but it sees more frames.

Q: Does it check for patterns as well as flashes?
A: No. Regular high-contrast striped patterns can also trigger symptoms and are part of the broadcast standards, but this tool measures luminance transitions over time only.

Translate this page

Machine translation provided by Google Translate, on Google’s servers. We do not check these translations and they will get technical terms wrong. The English page is the authoritative one. Following a link sends this page’s address to Google. Your browser may also offer to translate this page itself, which keeps the request on your device.