Flashlight Comparator Tool - 80+ beamshots & 40+ runtime graph measurements

Inspired by Wikilight.de, the Beamshot Comparator is a tool made to compare the large amounts of beamshots that I have taken over the years. I decided to try and make such a tool, seeing as Wikilight hasn’t been updated with new lights for the past couple of years.

I plan on adding more flashlights and their configurations to the list as time goes on. It’s also possible there will be new locations.

The website includes:

  • Different locations
  • List of lights sorted alphabetically
  • Flashlight specs based on my own measurements
  • Slider-style comparison
  • Downloadable comparison images
  • Some additional useful info

I coded the comparator with the help of Gemini Pro. The entire comparator itself fits inside a “Custom HTML” block in this WordPress post, while the beamshots are uploaded to the website and added to the comparator code as image links.
To help with adding large amount of beamshots to the comparator (with all the specifications), I use a script that helps semi-automate this process.

I’m releasing the code on Github, free for anyone to use. You can find it in the link below:

I’d love to see others create similar tools with their own beamshots.
I also added a compressed comparator, which could be used in reviews or comparisons. It doesn’t have the comparison downloadable section, only includes beamshots for 1 location and is easier to upload beamshots to.

Update 28.02.2026 (DD.MM.YYYY):


Added 13 new flashlights (in 3 beamshot locations):
Convoy:

  • L21A - SFT90
  • L21B - SFT25R, SFT42R
  • M21B - SFT42R, SFT90
  • M21E - LHP73B, SFT25R, SFT70
  • M21H - LHP73B
  • M21K - LHP73B, SFT90
    Wurkkos:
  • TD01C
  • TS28

All flashlights have been measured for lumen and throw.
Added a distinction between “0s” and “30s” lumen measurements.
For the new Convoy 20A driver flashlights (e.g. M21K, M21E LHP73B) I also included a “high” beamshot, as the turbo is only momentary.

Update 06.04.2026 (DD.MM.YYYY):
Added a new location (460m - field road):


You can also now zoom in using a new button.
Video: https://imgur.com/a/u1CRxE8

Update 16.07.2026 (DD.MM.YYYY)
Added an intractable runtime graph viewer with over 40 runtime measurements


Created scripts that allow to to quickly go through a large amount of CSV runtime measurements, clean them up, convert lux to lumen and upload everything to the comparator.
Added the ability to set a default location and beamshot, for when you first open the website.

Update 01.08.2026 (DD.MM.YYYY)
Added 9 new flashlights (3 beamshot locations, lumen runtime graphs with temperature)

  • L21B W5050SQ5, SFT60 & SFT90
  • L21A SFT42R
  • M21B SFT60
  • M21E W5050SQ5
  • M21H SFT40
  • 3X21D
  • M21H LHP73B w/ 3 degree lens

    Feel free to compare them. I will be uploading my own comparisons created using the tool soon (e.g. L21A vs L21B with the same emitters)

Update 06.08.2026 (DD.MM.YYYY)
Added throw measurements at turn-on (0s) to about 40 flashlights. Rather than being actual measurements, I calculated these values based on the turn-on (0s) lumens, 30s lumens and 30s throw value using this formula:
“sqrt(0s lumen/30s lumen)*30s throw”

Added the ability to turn the graph off, as I noticed that having it redraw itself every time you changed the flashlight was quite taxing on lower-end devices and caused a lot of lag.

Added a small watermark to the beamshots and to the generated graph (only when the graph is downloaded). The watermark can be turned off, but I’d politely ask for you to not do so. I’d want to spread the word of the tool I created to more people.

When “downloading” images on chromium-based browsers by simply dragging the images to e.g. your desktop, they will now be given a proper name instead of “Untitled.jpg”. Doesn’t seem to work on Firefox though, sadly.

Updated/redid runtime graphs and measurements of certain flashlights

10 Thanks

This is great!

1 Thank


Added 13 new flashlights (in 3 beamshot locations):
Convoy:

  • L21A - SFT90
  • L21B - SFT25R, SFT42R
  • M21B - SFT42R, SFT90
  • M21E - LHP73B, SFT25R, SFT70
  • M21H - LHP73B
  • M21K - LHP73B, SFT90
    Wurkkos:
  • TD01C
  • TS28

All flashlights have been measured for lumen and throw.
Added a distinction between “0s” and “30s” lumen measurements.
For the new Convoy 20A driver flashlights (e.g. M21K, M21E LHP73B) I also included a “high” beamshot, as the turbo is only momentary.

3 Thanks

I think this thread (and the online app behind it) has been vastly underappreciated - just try it to see how much easier it is to make purchase decisions when you can easily figure out what to expect.

This, and maybe + the Map to see how close the lights you know are to the lights you want… :⁠-⁠)

1 Thank

Very cool! Thanks to @grzybek337 and @mcjtom , both sites added to:

3 Thanks

On the subject of beam profiles, some users may find this helpful:

Given basic LED/reflector measurements, it generates an exact prediction for the hotspot/spill/corona angles, and visualizes it as a slice of the beam through the axis. Here’s a slightly more elaborate introduction/post about it on the subreddit.

Additionally, entering 2 more inputs (OTF lumens and emitting area) gives a prediction of maximum intensity/throw.

1 Thank

Update 06.04.2026 (DD.MM.YYYY):
Added a new location (460m - field road):

31 flashlights available to be compared

You can also now zoom in using a new button.
Video:
https://imgur.com/a/u1CRxE8

2 Thanks

Update 16.07.2026 (DD.MM.YYYY)
Added an intractable runtime graph viewer with over 40 runtime measurements


Created scripts that allow to quickly go through a large amount of CSV runtime measurements, clean them up, convert lux to lumen and upload everything to the comparator.
Added the ability to set a default location and beamshot, for when you first open the website.

8 Thanks

Update 01.08.2026 (DD.MM.YYYY)
Added 9 new flashlights (3 beamshot locations, lumen runtime graphs with temperature)

  • L21B W5050SQ5, SFT60 & SFT90
  • L21A SFT42R
  • M21B SFT60
  • M21E W5050SQ5
  • M21H SFT40
  • 3X21D
  • M21H LHP73B w/ 3 degree lens


Feel free to compare them. I will be uploading my own comparisons created using the tool soon (e.g. L21A vs L21B with the same emitters, SFT60 comparison against SFT90 & SFT42R etc…)

3 Thanks

Update 06.08.2026 (DD.MM.YYYY)
Added throw measurements at turn-on (0s) to about 40 flashlights. Rather than being actual measurements, I calculated these values based on the turn-on (0s) lumens, 30s lumens and 30s throw value using this formula:

sqrt(0s lumen/30s lumen)*30s throw = 0s throw

Added the ability to turn the graph off, as I noticed that having it redraw itself every time you changed the flashlight was quite taxing on lower-end devices and caused a lot of lag. (On by default, though)

Added a small watermark to the beamshots and to the generated graph (only when the graph is downloaded). The watermark can be turned off, but I’d politely ask for you to not do so. I’d want to spread the word of the tool I created to more people.

When “downloading” images on chromium-based browsers by simply dragging the images to e.g. your desktop, they will now be given a proper name instead of “Untitled.jpg”. Doesn’t seem to work on Firefox though, sadly.
Updated/redid runtime graphs and measurements of certain flashlights

2 Thanks