CASE STUDY · OWN PRODUCT · SEASON 2026
Where Bela krajina checks if the Kolpa is warm enough
reka-kolpa.si shows the current water temperature of the Kolpa river at twelve bathing spots, in Slovene, Croatian and English. I built the first version ten years ago; for 2026 I rebuilt it from the ground up. In one summer, 32,559 people used it 107,036 times. When the season ended, I joined every pageview with national weather data to find out who those people are, when they decide, and what actually sends them to the river.
01 / THE PRODUCT
Google had no good answer to “temperatura Kolpe”
In high summer the Kolpa at Metlika reaches 27–29 °C — exceptional for a river — and on a hot Saturday its bathing spots are the main event in Bela krajina. But the question everyone asks before getting in the car, how warm is the water, had no usable answer: the official readings sit in the national agency's hydrological tables, three stations deep, in an interface built for engineers.
So I built the answer — ten years ago, with what I had at the time: a WordPress site on Neoserv shared hosting and a Google Apps Script copying the official readings into a spreadsheet, hour after hour. It ranked, it spread, and it quietly became the place Bela krajina checks the river. The spreadsheet is still filling up today, one row an hour.
For season 2026 I rebuilt it from scratch as a proper product: a real database instead of the spreadsheet, three full language versions, structured SEO, an events calendar and ad space for the providers along the river. The product itself stayed what it always was — one screen with the current temperature at twelve spots, a map with directions, places to stay, events on both banks. No app, no account — a page that loads fast on a phone in a car park.
02 / THE SEASON
Ten weeks carry 83 % of the year
128,850
pageviews
32,559
unique visitors
107,036
visits
2,343
views on the peak day (25 June)
APR
FROM 15 APR
1,791
MAY
AVG MAX 24.0 °C
12,021
JUN
AVG MAX 29.3 °C
36,647
JUL
AVG MAX 31.1 °C
38,361
AUG
AVG MAX 33.5 °C
32,616
SEP
TO 15 SEP
7,414
PAGEVIEWS PER MONTH, SEASON 2026 · SOURCE: POSTHOG
A cold, wet May kept the site under 40 views a day. Then the first heat wave hit on 22 May and views went from 300 to 1,400 in four days. The absolute peak was not the hottest week of the year — it was the first hot weekend after school ended, stacked on the 25 June national holiday: eight of the ten strongest days of the season fall between 19 and 28 June.
August's heat wave was hotter — up to 39.5 °C — and never beat June. First heat is news; August heat is expected, and half the region is on holiday somewhere else.
03 / THE VISITORS
A tool people check, not a site they read
For ten years I thought of it as a small tourism site. A season of person-level analytics says it is an instrument — something closer to a weather app than a destination:
- 90 % of views come from a phone; the daily peak is between 10:00 and 17:00.
- 81 % of visits start in Google — a search for the water temperature or a specific bathing spot.
- 85 % of visits are a single page. People come for one number and leave.
- 89 % of views are from Slovenia, 9 % from Croatia — the river is the border, and the /hr/ version carries the Croatian bank.
- Sunday is the strongest day; a weekend day brings 23 % more views than a weekday.
The clearest signal is loyalty. 70 % of visitors came once. But 882 people opened the site on sixteen or more different days of the season, and the 13 % of visitors who came on four or more days produced 64 % of all views. A small core of locals checks the river the way they check the weather — daily, all summer.
13 % of visitors → 64 % of views
4,225 people with 4+ active days. PostHog person-level data, whole season.
04 / THE WEATHER MODEL
Tomorrow's forecast predicts visits better than today's heat
After the season I pulled the national meteorological archive — daily temperatures and rainfall from the Črnomelj station, sunshine hours from Novo mesto — and correlated them with daily views. Across the whole season, temperature correlates strongly (r = 0.73), but that is just summer being summer. The honest test is the core season, 15 June to 31 August, when every day is warm enough to swim.
SUNSHINE
HOURS OF SUN, SAME DAY
r = 0.60
TOMORROW
FORECAST MAX, NEXT DAY
r = 0.41
TODAY
MAX AIR TEMP, SAME DAY
r = 0.27
YESTERDAY
MAX AIR TEMP, DAY BEFORE
r = 0.08
PEARSON r VS DAILY PAGEVIEWS, CORE SEASON 15 JUN – 31 AUG (n = 78) · WEATHER: ARSO
Two things fall out of this. Inside the core season, sun beats heat: a cloudy 34 °C day does nothing, a sunny 30 °C day fills the car parks. And tomorrow beats today — the next day's maximum predicts views better than the current one, while yesterday's predicts nothing. People open the site the day before they go. It is a planning tool, and the evening-before check is the moment that matters.
Rain on the day itself costs only ~9 % of views — people already saw it in the forecast. A simple model (temperature + weekend + sunshine + rain) explains 44 % of day-to-day variance; a weekend is worth roughly +239 views, each hour of sunshine +86.
05 / THE WATER
Warm water is the precondition, not the trigger
The surprise in the hydrology data: day to day, water temperature explains almost nothing (r ≈ 0). Water moves on a weekly trend; visits swing daily with sun, weekends and holidays. All July and August the Kolpa was simply “warm enough”, so it stopped being a variable.
Until it wasn't. The storm of 22 August cooled Sodevci from 23 to 16 °C in a single day and the site had its weakest week since June. When the water fell under 15 °C in mid-September, the season switched off within two days. Cold water can end a season; warm water cannot start one.
06 / WHAT DIDN'T WORK
The homepage is too good for its own subpages
Putting every temperature on the homepage was the right call for users — and it cannibalises everything else. The homepage absorbs 75 % of views, so most visitors never open a location page at all:
- Any content living only on a location page reaches a quarter of the audience at best — Vinica, the biggest, sees ~7 % of total views.
- The rafting page converts 36 % of its visitors into a click to a provider, the rental page 52 % — and together they get half a percent of the traffic. Intent without visibility.
- The events listing only came alive in July, two months after the audience did.
And one at my own expense. I have spent years testing other people's interfaces for elements that look pressable but aren't — and my own temperature cards collected nearly 900 rage clicks over the season. People tap the number expecting it to do something.
07 / WHERE IT LANDED
The analytics became the sales pitch
The season report this page is built from now does commercial work: it is the offer going to accommodation, rafting and rental providers along the river for season 2027. Its core argument is that reach is the wrong number to sell. “32,600 people” means little to a campsite owner. “1,000–1,400 people the day before a hot weekend, on their phones, between 10:00 and 17:00, choosing a bathing spot” — that is an audience worth paying for.
The data also set the 2027 roadmap: provider cards move onto the homepage where the audience actually is, events get published in May instead of July, and partner placements are priced by each location's measured reach.
32,559 visitors in one summer
Season 2026, ten years in. No marketing spend — 81 % arrived through organic search.
All figures are from the 2026 season report: PostHog product analytics joined with meteorological and hydrological data © Slovenian Environment Agency (ARSO).
MY ROLE