Our Methodology
Every number on this site is either quoted from a named published source or derived in view. This page is the full procedure, including the one assumption.

We publish a methodology page because it is the only credential we can offer that a reader is able to check. We have no lab and no certification; what we have is a procedure, and a procedure is worth something only if it is written down.
1. What counts as a source
Every specification on this site comes from one of exactly three places, and each is labeled where it appears:
| Type | What it is | How it is labeled |
|---|---|---|
| Manufacturer published | A figure on the brand's own product page, linked in the sources block | Quoted directly, with the brand named |
| Extension and peer-reviewed | University extension guidance, published research, government data | Named in the text and linked in the sources block |
| Derived by us | Arithmetic on published figures, with every step shown | Marked 'derived' with the working in a box |
Not on that list, and never used: retail listing copy, competitor reviews, forum posts, our own recollection, and anything a language model produced without a source behind it. Retail listings in particular are excluded deliberately — they inflate wattage and omit photon figures, which is why we go to the brand page instead.
One exception exists and is flagged wherever it appears: the GooingTop clip light has no manufacturer specification document at all, so the figures we report for it come from the retail listing. That is a weaker source and we say so on its page rather than quietly mixing it in.
2. The formulas
Three formulas produce essentially every computed figure on this site. There is no fourth, and there is no model.
DLI (mol/m²/day) = PPFD × hours × 3600 ÷ 1,000,000
Cost per month = watts × hours × 30 ÷ 1000 × rate
Two supporting conversions: square feet to square meters is a division by 10.7639, and photon density scales with roughly the inverse square of distance, which is how we extrapolate a published PPFD to a height the manufacturer did not publish.
3. The one assumption we make
An assumption, not a measurement. It is the only place our arithmetic is not purely mechanical, and it is stated on every page where it is applied.
Dividing photon output by area assumes a fixture spreads its light perfectly evenly, which none does. The uniformity factor scales the result down to approximate a realistic average across the footprint.
We use 0.8 everywhere and label it as an assumption every time. It is deliberately conservative. A long bar closely matched to a long shelf will do better; a compact panel spread over a wide area will do worse, and its corners much worse than the average implies. We would rather use one stated figure consistently than tune it per fixture in a way nobody could check.
4. What we never do
- Estimate a specification a manufacturer did not publish. Three of the nine fixtures we cover publish no photon figure. We report the absence rather than filling it. There is no PPFD for a Barrina strip anywhere on this site, because Barrina has never published one.
- Publish a price. Prices come from a live data layer or they do not appear. A number typed into a page months ago is wrong by the time you read it, so our buy buttons read “check price” instead.
- Claim we tested anything. Stated on every page, not buried in a disclaimer.
- Invent reviews, ratings or review counts. There are none on this site, ours or anyone else’s.
- Emit a review rating in our structured data. A score we assigned is editorial opinion, not a product review, and marking it up as one would misrepresent it to search engines.
5. Worked example: the full chain, end to end
Here is every step of a typical figure on this site, from source to published number.
Source: Mars Hydro’s product page publishes 343 µmol/s PPF, 150 W ±5%, 2.3 µmol/J, and a 2.5 × 2.5 ft vegetative footprint.
Consistency check: 343 ÷ 150 = 2.29 µmol/J, which matches the published 2.3. The spec sheet does not contradict itself.
Area: 2.5 × 2.5 ft = 6.25 sq ft ÷ 10.7639 = 0.581 m².
Coverage: 343 ÷ 0.581 × 0.8 = 472 µmol/m²/s average.
Interpretation: University of Minnesota Extension’s high band tops out at 450, so this is above it — and the useful conclusion is that the fixture could cover more area, not that you need a bigger one.
Cost: 150 × 14 ÷ 1000 × 30 = 63.0 kWh a month; at 18.34 cents/kWh that is $11.56.
Every one of those steps is repeatable by anyone with the same source page. That is the entire claim Sprout & Spectrum makes for itself.
6. How picks are chosen
Rankings on this site are decided in this order, and commission is not on the list:
- Geometry. Does the fixture match the shape of what you are lighting? A square panel over a long shelf wastes more light than any efficacy advantage recovers.
- Verifiability. Can its output be computed from published figures before you buy? A checkable claim beats a higher uncheckable one.
- Efficacy. Photons per joule, which sets running cost and compounds over years.
- Fitness for the actual buyer. This site is written for someone lighting a shelf at home, not a production room.
A consequence worth stating: our top pick in one roundup publishes no data at all. Barrina strips win for shelves on geometry, and we say in the same paragraph that nothing about their output can be verified. If commission drove the ranking we would have no reason to write that sentence.
7. Numbers with a shelf life
Two figures on this site go stale and are re-sourced rather than left to rot:
- The electricity rate. Currently 18.34 cents/kWh, the US residential average from the Energy Information Administration’s Electric Power Monthly. Re-sourced annually, with the reporting month stated wherever it is used.
- Manufacturer specifications. Brands revise fixtures without renaming them. Every source carries the date we consulted it, so you can see how old a figure is.
8. Corrections
If a figure here is wrong, we correct it and note that we did. We would rather carry a visible correction than a quietly edited page — the whole argument of this site is that the numbers can be checked, and that means being answerable when one of them fails the check. The corrections policy is part of the editorial policy, and the contact page is where to send one.