TL;DR: The reason a Pinly price is worth trusting is where it comes from: the Queensland Government fuel price feed (fuelpricesqld in our system), not a bloke driving around guessing. QLD servos are legally required to report every price change within 30 minutes of it happening at the pump, and have been since December 2018. We pull that feed every two minutes. To show it lines up, this morning I median-checked a live inner-Brisbane sample — the 90 ULP stations within 8 km of the CBD — and got 209.9 c/L two ways, once from our stored table and once from the live feed, the same number each road. That inner ring usually runs a touch dearer than the metro at large, but with the whole city now parked at the top of its cycle the metro median has climbed to about the same mark — so 209.9 is close to the citywide figure today. The point of the check is that it matches the servos’ own reported numbers — bar the odd freshly-changed sign still inside its 30-minute reporting window.
I get asked this at the op-shop counter, usually like it’s a gotcha: how do you know that’s the real price? Fair question. Here’s the plain answer.
Who actually sets the numbers
The servos do — into a government feed, by law.
One reviewer put the fear well, about another app: “These fuel watching apps are just dudes driving around updating prices. They have zero affiliation with petrol companies and most of the time they’re wrong or outdated.” That’s the thing people are scared of, and it’s a reasonable thing to be scared of. It’s just not how this works.
In Queensland, every fuel retailer has to report each price change to a government scheme within 30 minutes of changing it at the pump. That’s been mandatory since December 2018. The scheme publishes it through a public feed — the same one that shows up in our system as fuelpricesqld. No user submissions. No one guessing off a photo of a board. The retailer changes the sign, the retailer reports the number, we read it.
How fresh it really is
Here’s the honest part, because that’s this column’s whole job.
We pull the feed every two minutes, so our copy is never far behind. But a single price is only as fresh as the last time that servo changed it. If a station hasn’t moved its price in a day, the feed still shows a day-old number — and that’s correct, because the price genuinely hasn’t changed.
So instead of stamping every price with the time we fetched it, we carry through the retailer’s own report time. On this morning’s snapshot, Liberty Annerley’s 199.5 was reported at 10:31; a Caltex at Wilston had its 203.5 in by just after 5am. Different stations, different report times, each shown as the retailer filed it.
That Liberty Annerley is the same site our cycle-peak wrap clocked at 178.5 five days ago, when it was one of the cheapest in town at the top of the cycle. Its cheap floor has since climbed about 21 cents toward the pack. That’s what the stubborn cheap independents do once a peak sets in — they hold out, then rejoin.
I checked it against itself
To make sure the number isn’t drifting somewhere in our plumbing, I pulled every ULP price within 8 km of the Brisbane CBD on 7 August — 90 stations — straight from the live feed. That’s an inner-city ring on purpose: a tight, checkable set close to home, not the whole metro.
Then I took those exact 90 stations and computed the median two ways: once from our stored table — the last price we’d saved for each — and once from the number sitting in the live feed right now. Both roads, the same 90 stations: 209.9 c/L each. That’s the check I’d want if I were you — not two different sets of servos landing on the same figure by luck, but the same servos read two ways, matching.
One thing worth noting: 209.9 is an inner-city sample. Inner Brisbane usually runs a touch dearer than the metro at large — the same pattern behind our off-ramp premium and cheapest-suburbs posts. But right now it’s a citywide story: our 2 August wrap put the whole-metro median near 199.9, and in the five days since the pack has climbed to about 209.9 too, so the inner ring and the citywide median have met at the top of the cycle.
The verdict
The data comes from the QLD Government feed, each price is the retailer’s own reported number carrying the retailer’s own report time, and we refresh it every two minutes. That’s the difference that matters: a servo does post its own number, but by law it has to be the real one — reported within 30 minutes of the pump changing. The scheme carries penalties for not complying, and there’s a public government form for anyone to flag a servo whose price is wrong. So the old fake-cheap-then-swap trick isn’t a free move here; a number that doesn’t match the bowser is a reportable breach, not a marketing tactic. If the board and the app ever disagree, that gap is the servo’s reporting lag — 30 minutes at most, by law — not us inventing a figure.
So what: it means the number is worth acting on. Across those 90 inner-city stations the prices ran from 199.5 to 219.9 — 20.4 cents apart, on the same morning, same fuel, a few suburbs apart. That 199.5 is only the cheapest inside this 8 km ring — an illustrative sample I drew to check the plumbing, not the whole bargain hunt. Cheaper sites typically sit further out; the cycle-peak wrap found 178.5 on the Ipswich Road run five days earlier, and even those have climbed since — the cheapest in the whole metro this morning was about 191.5. On Pinly you can see every station’s price and its report time yourself and pick the cheap one before you pull in.
Honest limit: two of them. First, 209.9 is the inner-Brisbane sample — the 90 stations within 8 km of the CBD — and it’s today’s number, right at the top of the cycle; the wider metro sits about the same today, but it’ll all drop hard at the next trough, so don’t file 209.9 as “normal.” Second, “matches the board” rests on the retailer reporting promptly; they’ve got up to 30 minutes, so for that short window a freshly-changed board can sit a few cents off the app. That’s their lag, not our data. And when I say Brisbane metro elsewhere I mean the wider net — 473 stations within 30 km, 430-plus with a live ULP price on a given day — not this 90-station inner check.
— Karen