Skip to main content
Illustration of the same solar module repeated five times, each with a price tag at a different height around a dashed middle line

Prices

The same module, different shop: how much prices differ

How far apart shop prices sit for the exact same solar module, measured on live offers before VAT, and what stock status and shop habits add to the gap.

By Bart Szablowski · Updated 9 October 2026 · 8 min read

In short: Where at least three Polish shops list the same module, the dearest shop's price per watt sits a median 17 % above the cheapest shop's, before VAT, and the median shop 9 % above it. Same model number, same rated power, different prices. Ask more than two shops, put their prices on the same side of VAT, and check stock before you compare.

This article measures how far apart shop prices are for the exact same module, and what sits next to a wide gap: stock status and how each shop tends to price. It can't say why shops price the way they do. We see their prices, not their costs.

How two listings count as the same module

A listing counts only when our matcher ties it to one catalogue module. The listing has to print the manufacturer's model number, the number has to point to a single module, and the rated power has to agree. The power check is there because a model number alone doesn't always pin down one power class. It's the same rule that fills the price table on our panel pages.

A shop with the same module on several pages counts once, at its cheapest page, and a module enters the comparison once at least three shops list it. The exact counting rules are under "Figures and denominators" below the article.

Across all markets, 55 modules pass that bar. For the 42 listed in more than one market, the gap mixes the shop with the market's price level and the exchange rate. So most of what follows uses Polish shops only: one currency, one price level.

Every price is compared before VAT. Some shops print prices with VAT and some without, and comparing the two as printed puts the tax into the gap. Gross and net shop prices covers the conversion.

How far apart shop prices are for one module

The spread is the dearest shop's price per watt divided by the cheapest shop's, minus one, in percent. Read the median column first. The middle half (25th to 75th percentile across modules) then shows how much the gap varies from one module to the next.

Dot plot illustration of one module priced at six shops, the dots spread along a price per watt axis from lower to higher with the middle marked
Illustration, no real prices: one module, six shops, each dot one shop's price per watt. The figures in the text measure how far apart such dots sit in the live offers. Image: ComparePV, ComparePV original.
Scope Modules Listings Median gap (%) Middle half (%)
All markets 55 250 36 17 to 49
Poland 32 133 17 11 to 37
Poland, without out-of-stock listings 21 89 12 7 to 22

The table is recomputed from the live offers whenever the page loads. The widest gap for a single Polish module was 90 %. That's one module at the far end. Plan with the median and the middle half.

What the gap is worth in money

In euro, the median gap between the dearest and the cheapest Polish shop was 0.024 EUR/W before VAT. Multiply it by the watts you're buying.

A worked example with round inputs: a 10 kWp system is 10000 W of modules. Each 0.01 EUR/W of gap costs 10000 × 0.01 = 100 EUR before VAT on that system, so a gap of 0.05 EUR/W costs 5 × 100 = 500 EUR. Put the figure above into the same sum for today's number.

The median shop against the cheapest

The full spread rests on two shops, the cheapest and the dearest. The median shop figure is steadier: for each module, how far the middle shop sits above the cheapest one. Across the Polish modules its median was 9 %.

It can never be larger than the full spread, and the distance between the two tells you where the range comes from. If the median shop sits close to the cheapest, most shops price alike and a few at the top stretch the range. If it sits close to the full spread, the shops are spread out all the way up.

With and without out-of-stock listings

A low price on a page marked out of stock isn't a price you can pay today. So the Polish comparison runs twice: once with every listing, once without the listings their own shop marks out of stock. Listings that say nothing about stock stay in, as they do on our panel pages.

In the table above, that's the Poland row against the row without out-of-stock listings: 17 % against 12 %. Check the module counts as well, 32 against 21. Dropping listings can take a module below three shops, so the two rows need not cover the same modules.

Where the gap without out-of-stock listings is lower, part of the wide gaps sits on prices nobody can pay right now, though the smaller module set can move the median too. We read an out-of-stock price as printed. Whether it holds when the module comes back, we don't know.

Stock status is the shop's own label as our crawler last read it: in stock, out of stock, or not stated when the shop publishes nothing. Any label can be out of date.

Where each shop sits against the others

To test whether a shop's price level carries from one module to the next, each Polish shop listing three or more of these modules gets a position: how far each of its listings sits from the median shop for that module, then the median of those distances. The table counts shops by where that position falls.

Polish shops listing 3+ compared modules Shops
All of them 13
Median listing below the module's median shop 6
Median listing above the module's median shop 6
Never on the other side of the median for any module they list 4

Read the last row against the first. The larger its share, the more shops keep one price level across their whole range.

A second count looks at the cheapest place: 12 different Polish shops were the cheapest for at least one of the 32 modules. The more shops share that place, the less any single one is cheapest across the board. Neither count says anything about a shop's costs, delivery terms or real stock.

Printed prices against before-VAT prices

On the prices shops actually print, each on its own side of VAT, the median gap in Poland was 28 %, against 17 % before VAT. When every shop for a module prints on the same side at the same rate, both comparisons give the same gap. So a difference comes from modules with Polish shops on both sides of VAT, 17 of 32 here, where the printed comparison sets a price with VAT against one without, or from shops applying different rates.

One module across several shops

The module below was, when this article was written, the one listed by the most Polish shops, with ties broken by the most shops in all markets. Nobody paid for its place here. The table shows its five cheapest offers across all markets, each at the shop's own price on its own side of VAT.

Cheapest current offers for Jinko Solar JKM590N-72HL4-BDV, prices read 9 Oct 2026.

ShopMarketPriceAvailability
Falowniki OnlinePoland393.60 zł incl. VATNot stated
PV ZenitPoland394.00 zł incl. VATIn stock
Marven SolarPoland325.00 zł netIn stock
Panele-Sloneczne.comPoland334.91 zł netIn stock
PVhurtPoland430.77 zł incl. VATIn stock

Each price is the figure the shop printed, on its own side of VAT.

Rows are ordered by price before VAT in one currency, so the printed figures don't always rise down the table.

What this means when you buy

Get more than two prices. Two quotes tell you little about where the floor is, and the median gap above shows how far apart the shops for one module usually sit. The price table on each panel page lists the shops we hold for that module, cheapest first.

Check stock before the price, and convert every quote to one side of VAT. A listing that says nothing about stock may or may not have it, so ask before you plan around it.

Insist on the model number. A listing counts here only when its model number and rated power both match one catalogue module, so the shops compared sell one product with the power tolerance its datasheet states. A listing without the number may be a different power class or a different version of the series. If a shop won't tell you the exact model number, I wouldn't treat its price as comparable.

Then look at the rest of the offer. Delivery, minimum order size, payment terms and warranty handling differ between shops, and none of them is in our data. A shop that only ships full pallets may not be cheaper for your order; see pallet or single module. To see what a price per watt means over a system's life, read about the levelized cost of electricity, and put the price you'll actually pay into the solar payback calculator.

Limits of this comparison

Only listings that print the manufacturer's model number enter it. Those are the modules shops name precisely, and they may not be typical of the market. Whether unnamed listings spread wider or narrower, we can't tell.

The range between the cheapest and the dearest grows with the number of shops. A module listed by ten shops has more chances of an outlier than one listed by three, and the median shop figure is less sensitive to that than the full spread.

The before-VAT price is derived with the VAT rate the shop itself applies. Where a shop applies a reduced or zero rate that only some buyers qualify for, the net price still follows the shop's own rate.

The all-markets row mixes market price levels and currencies, converted at the ECB reference rate of the day the offer was read. The ECB publishes that rate for information purposes only. For price levels by country, see solar panel price per watt by market; for how price per watt changes with module power, see which power class is cheapest per watt.

01

Figures and denominators

How the figures above were computed. Every figure is recomputed from the catalogue and the live shop offers when the page is served, and each one counts only the modules or offers that publish the value.

The offers come from our crawler, which reads the public product pages of shops in several countries and keeps one current row per product page. A product page the crawler stops seeing drops out after a week, so the pool is the offers live when the page is served, not a price history.

An offer counts as the same module only when our matcher ties it to one catalogue module: the listing must print the manufacturer's model number, that number must point to one module in our catalogue, and the rated power must agree. Listings without a model number, which is most of them, are left out. The pool is single rooftop modules rated 400 to 800 W, priced between 0.05 and 2 EUR/W before tax, the same pool as our article on price per watt by market.

A shop that lists one module on several pages counts once, at its cheapest page, as on our panel pages. A module enters the comparison when at least three shops list it. Its spread is the dearest shop's price per watt over the cheapest shop's, minus one, in percent, on prices before VAT converted to euro at the ECB reference rate of the day the offer was read. In Poland, where most such modules are, the spread is computed over Polish shops only, so market price level does not enter it, and currency only through the day-to-day move of the zloty rate between the days offers were read.

The in-stock comparison drops listings the shop itself marks out of stock and keeps those that say nothing about stock, as our panel pages do. A shop's position is how far each of its listings sits from the median shop for that module; the shop's figure is the median of those distances.

All 11 figures on this page and what each counts
FigureValueComputed over
Poland: median shop over cheapest, median9 %32 modules
All markets: modules whose shops are in more than one market4255 modules
Poland: widest dearest over cheapest90 %32 modules
Poland: dearest shop minus cheapest, price per watt before tax, median0.024 EUR/W32 modules
Polish shops listing three or more of the modules compared in Poland1313 shops
Of those, shops whose median listing sits below the module's median shop613 shops
Of those, shops whose median listing sits above the module's median shop613 shops
Of those, shops never on the other side of the module's median shop413 shops
Poland: shops that are the cheapest for at least one module1232 modules
Poland: dearest over cheapest on printed prices, median28 %32 modules
Poland: modules with shops on both sides of VAT1732 modules
02

Related tools

04

Reference list