Lumintop D3

1lumen selects and reviews products personally. We may earn affiliate commissions through our links, which help support our testing.

Lumintop D3 flashlight review

Lumintop D3 specifications

Brand/modelLumintop D3
Max. LumensN/A
Max. Beam intensity / distanceN/A
Battery config.1*26800
Onboard chargingUSB-C
ModesMany! Anduril 2
Review dateMarch 2022


Lumintop has firmly cemented their position as a popular player in the Chinese flashlight hierarchy. It’s not difficult to see why either because they make great lights at budget prices. Lumintop is also a free-thinking and innovative company, venturing into the microcosm of enthusiast-inspired collaboration projects like the Budget Light Forum Gigathrower(s), FW3A, and FWAA EDC lights. In fact, the flashlight world hasn’t been the same thanks to Lumintop’s innovative, high performance flashlights, making lights that were once only available as (very expensive) custom one-offs. One such light is the D2. Introduced in 2020 as a compact pocket thrower, it was an alternative to the ubiquitous C8 style lights. It featured an 18650/21700 battery and onboard charging featuring your choice of an Osram “P9” or Nichia 219C emitter. It was a very nice pocket light with decent specs for under $40 (sometimes under $30 with discounts), but as the saying goes, like minds think alike. Well, Lumintop must have been reading flashlight enthusiast minds, and like the FW’s and Gigathrower(s), the D2’s gone under the knife and received some tasteful improvements. The 21700 size tube has been chucked for a bigger one, and there’s a monstrous emitter as well. Let’s dig in and see what Lumintop’s done with an already nice light.


Okay, full disclosure. Currently, the D3 is in the prototype stage, so the sample light came in an entirely appropriate, prototype-erific package (or lack thereof). While the outer box was okay, inside was another story because the packaging chap(s) stuck on a lens protector film, wrapped it in bubble wrap, then hastily jammed it into a simple white paperboard box. Afterwards, they must have given it to a bunch of footballers to kick around because the box was mangled and ripped open. The photos speak for themselves, and unfortunately, the light had some minor finish damage, but otherwise, it was perfectly okay.  

  • Lumintop D3

Yep, that’s it! No lanyard, no charging cable, no battery (which could be an issue…read on), no holster, nada, but again, this is a prototype and the final production version is still aloft in the fourwinds.

Flashlight in use

The D3 is a scaled-up D2, and Lumintop did a bang-up job with this, a bit like the FWAA vs. FW3A size differential. Whereas the FW3A went on a serious diet, the D2 must have loosed its inhibitions and raided the snack cabinet since it’s grown a bit. I don’t have a D2 to compare it to, but part of the upsizing resulted in a larger battery tube to accommodate the 26800 size cell, which for folks with larger hands is great for grip. I had no trouble hanging onto the D3 in all grip positions, and it handles about the same as the Astrolux EA01 or MF01 Mini, which are both 26650 size tubes.

The D3 carries forward the D2s grippy, square nobbly knurling in all the places your hands or fingers would rest, on the tube, head, and tailcap, which was great for a nice grip. The handling is nice and neutral with the side switch positioned at the balance point for reduced hand fatigue. The D3 retains the D2s single electronic side switch with the neat-o backlit Lumintop bunny on it. It’s a grippy rubber button nestled in a nice aluminum bezel. Although it only sticks up a tiny bit, it’s easy to find, and the switch is illuminated green continuously for locating in the dark. Nice!

The clicks are very nice, albeit a bit muted, but still had solid and positive action. The USB type C charge port is positioned 90 degrees opposite the switch and sealed with a very nice silicone rubber seal. It fits flush with the body and the pull tab sticks up just enough to be easy to grab and lift up, but not so much it would constantly get snagged on clothing or opened by accident. I did occasionally snag it though, but not enough to fully open it like on the Astrolux EC03. The tailcap has two lanyard mounting cutouts, so if they ever bundle one with the D3, threading it would be a piece of cake. Tail standing? No problemo!

Build Quality, and Warranty

Lumintop could have easily fooled me had I not foreknown this was a pre-production light, since the quality isn’t indicative of one. The build quality, fit and finish are typical Lumintop. The price? Well, that’s up in the air, but since the D2 ran around $40 US sans battery, I can’t see this being any more than $60? We shall see. Aside from the resultant blemishes from shipping, there’s no quality concerns or issues with the D3. All the parts fit up fine with no gaps, and all the threads are super smooth and don’t bind. The light is obviously made from tough aluminum alloy, but your guess is as good as mine as to which one (probably 6061 T6). The finish is a very nice matte HA aluminum, easily as nice as the Convoy L21B’s and adds some grip. Aside from the blemishes, it’s perfect with no thin areas or obvious anomalies. 

The D3 comes apart nicely, and Lumintop’s inherent enthusiast roots are evident because the bezel wasn’t glued and unscrewed easily by hand. The reflector comes out, and with a couple philips screws, the MCPCB can be liberated from the LED shelf. The tailcap seemed cobbled together, similarly to the Nightwatch NI03, consisting of a brass sheet with a very beefy gold-plated spring soldered onto it. It wasn’t super-tidy, and some of the plating had peeled off the spring, but hey, it’s a prototype. The driver was also pre-production, with solder on the ground ring that a production unit wouldn’t have. It seemed glued in and not easily removable. It omitted a spring, instead opting for a solid brass contact for maximum current flow. 

The threads are all rectangular cut, fully anodized, so mechanical lockout is possible, and well-lubed. The front threads are arranged similarly to those on the FireFlies PL47G2, with a ‘nose’ that extends into the head to contact the driver’s ground ring. There’s o-rings sealing the important mating surfaces here: Front threads, rear threads, and bezel. Each was nicely lubed as well, and although Lumintop doesn’t specify an IP rating, I’d presume it’s similar to the D2s IPX8.  

This is a pre-production model, but warranty-wise, the production D3 would carry the same warranty as other Lumintop products: 30 days free replacement: Lumintop will replace or repair products with manufacturing defects within 30 days of purchase. 5 years free repair: Lumintop will repair the products free of charge within 5 years (accessories 1 year, products with built-in battery 2 years)of purchase if problems develop with normal use. Lifetime warranty: If repair is required after the guaranty period, we’ll charge for parts accordingly. This warranty does not cover normal wear or tear, abuse, force majeure damage, or defaults by human factors.

LED, Lens, Bezel, Beam, and Reflector

The D2 came with two fairly standard LED choices: The Osram “P9” aka GW.PUSRA1 PM in 5700K or the Nichia 219C in 4000K. These were good for about 1000 Lumens, which is totally fine for most folks, but this is an ‘upgraded’ D2, and the benefit of a larger host is you can stick in a larger (read: more powerful) emitter, and that’s what Lumintop’s done here. Now, it would have been easy to use something like a 5050-size SST70, SST40, or XHP50.2, and an XHP70.2 wouldn’t have been unreasonable here, but Lumintop must has figured those were ‘too common’ and went with the least efficacious choice for a light this size…SBT90.2? Nope. XHP70.2? Not that one either.

They went back to the Orient and gleaned another 7070-size emitter, the SFN55.2. For those who don’t know, this is a 7070 size (7×7 mm), 3 volt domeless multi-die LED. I have no idea who makes it, but it’s composed of 9 separate dies on a single substrate, and unlike a COB, the LES looks homogenous. The tint isn’t specified, but at mid-ramp, I measured it at around 6000K and 64’ish CRI with the Opple Lightmaster. Coming in with a duv of 0.0070, it’s above the BBL, but doesn’t look green except on low current. 

The reflector is about the same size as a C8 unit (about 40 mm wide), but a bit shallower to accommodate the huge LED. Lumintop smartly went OP on this, which should help smooth out the beam. Although the SFN55.2 doesn’t suffer from the same type of angular tint shift and chromatic aberrations as the XHP’s, it’s still not going to have the same uniformity as single-die LED, so it benefits from some texturing. The lens is a roughly 42 mm wide (close to a C8 size) AR coated mineral glass unit. The bezel is aluminum with some gaps (not quite a strike bezel) so light can escape, and since it’s recessed about 3 mm behind the bezel, the lens is well protected. 

The beam is nice, and the OP reflector helps smooth out the beam and the tint distribution is pretty uniform. It’s pretty clean, with a large hot spot with a bright diffuse spill and lots of side illumination. Imagine an XHP70.2 with a smaller hotspot and no ugly tint shift. This is an excellent general purpose, bumping-around beam. It is a bit green at low settings on white walls, but no complaints here.

Dimensions and size comparison

There aren’t any manufacturer specs for size and weight for the D3 (yet), so these are my own figures. The D3 didn’t include a battery, so I used one I had on hand. It’s about the same size as a C8 pattern light (if they came with a 26650 size tube anyway).

  • Length: 13.4 cm / 5.27 inches
  • Body diameter: 3.04 cm / 1.19 inches
  • Head diameter: 4.57 cm / 1.79 inches


  • Without cell: 151.9  grams / 5.34 oz.
  • With 6800 mAh 26800 cell: 262.9  grams / 9.27  oz.

Flashlight size comparison with its competition

I compared the D3 to some other similarly-sized lights.

Group 1 left to right: 26800 battery,  Lumintop D3, Nightwatch NI03 Valkyrie

Group 2 left to right: Astrolux EA01, Astrolux MF01 Mini, Thrunite TC20 V2, Lumintop D3, Astrolux FT02S

Group 3 left to right: Lumintop D3, Thorfire C8

I compared the size of the 26800 battery to a 21700, 26650, and a Lumintop FWAA

Driver & User Interface:

I don’t know what manner of driver’s sitting in the Lumintop D3. It could be a modified version of the D2 driver or a new unit? Who knows. I do know it’s roughly 30 mm in diameter, and probably some kind of FET+1 since there’s a single 7135 chip visible on the backside.

There wasn’t any documentation or hints to the D3’s UI initially, but it behaved an awful lot like Anduril, which made sense because it was brought to my attention after the review first posted that the D3 is indeed sporting Anduril 2.

This makes sense because the D3 is occupying a different sector of the market (read: enthusiast lights). Instead of adapting the D2’s less-than-stellar UI, you instead get all the configurability and customization your heart or curiosity desires. Anduril 2 really needs introduction, other than it’s easily the most advanced flashlight UI around.

Anduril 2 User Interface

Here is another Anduril 2 image.

And by default, it uses the Simple UI… and here is the UI diagram:

Anduril2 has two UI’s available: Simple and Advanced. The light came with the Simple UI enabled, and I think it’s kind of a misnomer because it’s still a little complicated for a first-time user. However, those familiar with the original will pick it up pretty quickly. Simple UI is missing some of the familiar features present in the original, namely the special blinky modes, temp check, and thermal configuration (those are present in the Advanced UI), and there’s no “muggle” mode either. You still get access to smooth ramping (stepped is, you guessed it, only available in Advanced UI), lockout, momentary high, battery check, and some useful lock/unlock modes.

The Advanced UI is appropriately named because it’s, well, advanced and there’s a plethora of options and configurations available. There’s probably way more features than the average user would ever dip into, but it’s nice to know you can tweak things like the voltage sensor calibration for batt check, AUX LED settings, and even configure the auto-lock. I found this to be a pretty useful feature that enables the light to automatically turn off after a certain amount of time if the light is accidentally activated.

Modes: Simple and Advanced UI both have many standard and blinky modes available, but the main modes are stepped and smooth ramping, but stepped ramping is only available in Advanced UI, and smooth is enabled in both Simple and Advanced.

Switch to Advanced UI from Simple: 10 clicks, but hold on the 10th click

From OFF:

  • Press and hold: Turns on in either smooth or stepped ramp (depending on which mode is enabled)
  • Single click: Turn on in last mode (step or ramp state-again depends on which mode)
  • Double click: Ramp ceiling/turbo
  • Triple click: Battery check (in Simple and Advanced UI)
  • Triple click and hold: Special strobe modes-remembers last used (in Advanced UI)
  • Quad click: Lockout mode. In lockout mode you have different options available:
    • 1 click: momentary moon (bottom of ramp)
    • 2 clicks: momentary (higher floor)
    • 4 clicks: turns on in ramp mode
    • 4 clicks with a hold: on in ramp mode, lowest/floor
    • 5 clicks with a hold: on in ramp mode, highest/ceiling
    • 10 clicks with a hold: configure the lock timeout threshold (in Advanced UI only). This is a new feature for Anduril2, it allows you to set a timeout to the lock, where the light will lock after a pre-set elapsed time. 

From ON:

  • Press and hold: Ramp up (depending on the mode)
  • Single click: Turn off
  • Double click: Ramp ceiling/turbo
  • Double click and hold: Ramp down
  • Triple click: Toggle between smooth and stepped ramping (in Advanced UI only)
  • Quad click: Lockout mode (see above for the lockout options)

Mode memory:

  •  Yes, memorizes last on state setting either smooth or stepped ramping, but does not remember blinkies

Low voltage warning:

  • Yes, when in operation, the light steps down brightness gradually until turning off when the cell is  around 2.9 volts.


  • Yes, many! The blinkies are accessible from off with 3H (click click click-hold) in ADVANCED UI only. You switch between strobe modes with 2 clicks:
    • Candle mode
    • Bike flasher
    • Party strobe
    • Tactical strobe
    • Lightning storm

Lock-out mode: 

  • Yes. In Simple or Advanced UI, lockout is accessed by 4 clicks from on or off. 4 clicks to unlock. The lockout enables momentary operation in the moon mode, however, 2H (click click-hold) enables low mode. There are other lockout modes available (see the diagram). 

Temp check and thermal calibration mode

  • In the first version, you could do both the ambient temperature sensor calibration and thermal ceiling at the same time, but in Anduril2, it’s a little different. When in temp check, click 7 times and hold on the 7th to enter the thermal configuration. To configure the ambient temp, wait for the first flash and then set the ambient, but once you’ve done that, you need to go back to the temp check and click 7 times, hold on the 7th, this time, don’t let off the button. Wait for the 2nd blink, and then you can set the thermal ceiling. 


  • There’s PWM visible via camera, but when pointing the light at a fan and ramping up and down, there’s not a noticeable change in “blade speed” as you might get with some other lights, so it’s not hugely visible to the eye.

Additional info on the UI: 

  • Okay, Anduril 2, although not my first choice, makes sense in the D3, just like in most all enthusiast flashlights. While the D2 was marketed towards more casual users who don’t really need configurable thermal limits, ramp ceilings, voltage calibration, tint ramping, aux LED control, etc. we all know enthusiasts and flashoholics do, and they take advantage of all the extra goodies. Plus, you get the added usefulness of setting the thermal limit so you can have decent sustainability of a low thermal limit, or set it high and feel the burn. The thermal calibration was set to 21 C, which (surprisingly) is about right so I didn’t mess with it this time (thanks Lumintop). Moreover, the thermal limit was set to 60 C, which is a reasonable figure, so I left it alone.

Batteries & Charging

10 years ago, the 26650 was the most awesome li-ion battery you could get for a flashlight. A few years later 21700s came along. Now, most high-end lights (enthusiast and consumer) are 21700 size, including the D2, so you’d think Lumintop would keep the D3 21700-size, right? Nope. An outrageous emitter needs an equally outrageous battery to feed it, so Lumintop went the logical route and built the D3 around the 26800 size li-ion cell.

This is the same cell the Nightwatch NI03 Valkyrie and NSX4 comes with, along with some Astrolux/Mateminco lights (with adapter tubes). Convoy’s L8 features this battery as well. This is a 26 mm wide by 68 mm long cylindrical battery, so think a 26650 stretched from 65mm to 80mm. Although it comes with a size/weight penalty over a 26650 or 21700 (a 5 Ah Thrunite 26650 weighs 100 grams, a Samsung 40T 69 grams, the 6800 mAh 26800 111 grams), it makes up for it in some key places: Current handling, capacity, and recharge current. A low capacity 26800 is still around 6000 mAh and can handle continuous current like a Samsung 40T (30 amps). Plus, you can charge them at up to 5 amps or more.
The issue with a battery like this is its availability/compatibility. I have a bunch of 18650s, 21700s, and a few 26650s, but 26800? I have one and it belongs to the NI03. I can’t find these batteries in the US (sold out), and even from China they’re about $12 each before equally expensive shipping.

You might say, Nick, what about a 26650? Nope. A protected Thrunite flat top and a button top Wurkkos 5500 mAh 26650 were too short. A 21700 worked, but it needs a spacer and something to bring up the diameter to fit the tube. My guess is Lumintop will sell the D3 with the battery as an add-on, so if they do, get it. For charging, the D3 retains the D2’s USB type C onboard charging, but it became apparent that Lumintop’s tweaked some stuff. On my USB tester with a mostly-charged 6800 mAh 26800, I saw 1.75 at 5 volts amps on a USB A to C connection, but when I tried a USB type C to C on my PD charger, it started charging at 9.28 volts and 1.88 amps, so about 18 watts, equivalent to 9V 2A quick charging and that’s fantastic since this large battery really needs it. The Lumintop bunny switch indicator turns blue and flashes during charging, and goes solid blue when finished. Termination voltage was around 4.17 volts and it took about 2.5 hours to charge the 6800 mAh battery.

Performance test

Lumen measurements (for each mode)

Lumens were measured in the usual way using my home made 30 cm integrating sphere that’s been calibrated with several lights of known output including a Makkua-calibrated Convoy S2+. I use a Digi-Sense 20250-00 datalogging luxmeter. I used the included fully charged battery for the test. I usually measure amps using my Radio Shack T-RMS multimeter with 16 gauge wires inserted in the meter for currents under 8 amps, and my clamp meter with the loop of 12 gauge wire for over 8 amps. I used a 6800 mAh 26800 battery for the test.

ModeAmps at startSpecsLumens @turn onLumens @30 secLumens @ 10 min
Bottom of ramp70 mA?2.402.40
50% ramp400 mA?390382382
75% ramp5.89 A?16521635730
Top of ramp10.40 A?31542656664
Turbo24 A?53002075498

I actually tested the light twice after realizing there’s another Turbo in Advanced mode. Oops! In addition to Turbo, I took 4 current measurements at various points in the ramp. I took readings at the bottom, 50%, 75%, top of the ramp, and Turbo in Advanced mode. 

Parasitic drain:

  • 1.7  µA

Runtime graph

I tested the light in my 30 cm integrating sphere calibrated using several lights including a Makkua S2+ with the Digi-Sense 20250-00 datalogging luxmeter with the 6800 mAh 26800 battery. I tested (roughly) 50%, 75% ramp, 100% (top of the ramp), and Turbo (in Advanced mode). 

Switching into Advanced mode to access the ‘real’ Turbo mode really woke the light up. Starting at over 5000 Lumens, the fireworks were short-lived indeed, with the output dropping like a rock within 10 seconds. The temps? Yep, pocket-rocket hot within 5 seconds. From 27 C ambient, the head hit 36 C by 5 seconds, and by 10 seconds was over 40 C, hitting 54 C by 60 seconds. I measured the highest temperature at 59 C. We’re seeing better than 2000 Lumens for 66 seconds, and over 1000 for 2 minutes 35 seconds. By the 10 minute mark, the show’s pretty much over with the output settling around 500 Lumens, where it stayed for the next 2 hours 40 minutes until another drop as LVP kicked in with the light shutting off at 2 hours 58 minutes. 

Top of the ramp started at 3154  Lumens, the output decreased as the temps rose, no surprise. The light got hot quick, but not like a pocket rocket EDC. At 30 seconds the area behind the switch was 39 C, and by 60 seconds it was 47.4 C. The output stayed pretty steady until about the 1 minute 35 second mark, when the output started visibly throttling back when the temps hit 60 C. It stayed cool enough to touch the whole test though. We’re seeing better than 2000 Lumens for over 2 minutes, and better than 1000 for almost 4 minutes, which isn’t bad for a compact light, but from there, it’s all downhill. By 10 minutes in, the output is below 700 Lumens, and settles at around 500 Lumens by the 30 minute mark, until a bump in output to 581, 664, and a bit over 700 before the output dropped very low and I ended the test at 2 hours 41 minutes. 

75% ramp started at 1651 Lumens and was pretty steady and held over 1000 Lumens for almost 6 minutes. Not too shabby. After that though, the output mimicked Turbo’s, with gradual step downs to a plateau, then more step downs until a shut down. It didn’t heat as abruptly as Turbo, but did hit 57 C by 10 minutes. After that, temps stayed under 55 C, so it was hand-holdable for the entire runtime. The sustained output was similar to Turbo as well. The light shut down at 2 hours 48 minutes, outlasting 100% ramp by a whole 7 minutes.

50% was the endurance winner here, starting at 390 Lumens and staying consistent for the next 4 hours, only dropping about 100 Lumens over that time (barely enough to be noticeable by eye), followed by gradual step downs during the last hour and a half of the runtime. Total runtime was 7 hours 2 minutes. Heat? Not really as the highest temp I recorded was 22 C over ambient. It wasn’t quite running off the 7135 regulator for this test, but nonetheless, a nice consistent runtime.

These are classic FET driver runtime graphs, and I’m not surprised one bit. After unlocking the full Turbo in Advanced mode, the output was much higher over the top of the ramp, and as usual, it’s mainly for show since those 5000+ Lumens lasted as long as a Hollywood relationship. It’s not all bad though, and the lower modes are much better for longevity. You could set the thermal limit to 70 C, but that wouldn’t help sustainability much, so I think 60 C out of the box is a nice compromise. The light was hand-holdable for every test and the first few minutes of Turbo. Despite the big battery, the runtimes aren’t that impressive, mostly due to that inefficient SFN55.2. Overall, not a bad showing for a really compact light without much thermal mass. Lastly, like we all know, Anduril in both flavors has great consistency for LVP, and the battery came off between 2.85 and 2.91 volts.

Throw numbers: 

I measured the throw with the Uni-T UT383S luxmeter indoors at 5 meters. I used a fully charged 6800 mAh 26800 battery.

ModeSpecsCandela measuredMetersYards
Bottom of ramp?N/A too lowN/AN/A
25% ramp?1100 cd6673
50% ramp?4875 cd140153
75% ramp ?7125 cd169185
Top of ramp?31,100 cd353386
Turbo?50,600 cd (83,275 cd at start)450 (577 at start)492 (631)

Lumintop doesn’t list throw figures for this light, but my numbers are pretty good for a large-die emitter. In fact, the Turbo throw is fantastic for a C8-size reflector with an LED die this big, even at 30 seconds. At start-up it’s incredible. In fact, the turn-on figure beats quite a few lights with throwier emitters.


For outdoor photos, I compared the D3 to some similarly-powerful lights (and on not) I have, including the

  • Astrolux EA01 (XHP50.2, 3700 Lumens)
  • FET driven SST40 C8 (around 2000 Lumens)
  • XHP50.2 C8 (about 3100 Lumens)
  • The Fenix TK16 V2 (about 2800 Lumens)
  • Klarus XT11GT Pro V2 (also about 2800 Lumens)
  • Thrunite TC20 V2 XHP70.2 (around 4000 Lumens)
  • Nightwatch NI03 Valkyrie SFN55.2 (I measured about 7800 Lumens).

The fence is about 40 meters away. It’s a respectable pocket light with a nice beam and very good throw for a big emitter.

Disclaimer: This flashlight was sent to me for review at no cost by Nealsgadgets. I have not been paid to review, nor have I been holding back on problems or defects.

Final Verdict


  1. Solid build quality
  2. Really bright
  3. Compact and lightweight
  4. SFN55.2 LED
  5. Very useful beam
  6. Quick charging
  7. Great throw


  1. No battery or adapters
  2. Anduril2 is complicated
  3. Runtimes are not that great with the big battery
  4. Gets hot quick

Explanation on star ratings:

1: Avoid: my phone flashlight would be a better choice – 2: Poor: significant defect or issues; almost unusable – 3: Average: some defects or issues; but still usable 4: Good: recommended (minor issues) – 5: Great: highly recommended

Reviewer Nick
Author: Nick

4.5 stars: ★★★★⋆

I know this isn’t the final version of this light, but I think Lumintop is really on to something here. Overall, I really like the D3. Aside from being the first company to stick the big-boy SFN55.2 into a small light, Lumintop took everything great about the D2 and made it bigger while managing to keep it a compact pocket light.

The SFN55.2 is a nice alternative (albeit way less efficient) to the XHP70.2 with a nice even beam and really great throw. I like the quick charging, which is essential on the humongous 26800. As much as I like the larger batteries’ extra capacity, they’re a bit hard to come by these days, and I’d say most folks don’t have one lying around, so it would have been nice to see an adapter of some kind to accept 21700s. I hope Lumintop includes a 26800 standard or as an optional add-on at the very least. Anduril2 is complicated for new users who might want to get this light, and the runtimes, despite that big battery, aren’t that great (the SFN55.2 doesn’t win any efficiency contests). Even so, it’s pretty good as-is. 4.5 stars for the D3.

Lumintop D3 For Sale

Get a nice 25% discount with our unique code: 1lumenNew

1lumen selects and reviews products personally. We may earn affiliate commissions through our links, which help support our testing.