Server rendered pages
Listings render on the server and ship ahead of time, so a phone receives finished HTML instead of building the page itself.
Real Estate
A Berlin property platform
Case at a glance
63% more qualified leads, 0.9s mobile load
When a Berlin property platform first came to us, the symptom was easy to name but painful to live with. Buyers were leaving before the page even finished drawing. On a phone, the old site needed several seconds to show a single listing, and in Berlin that is plenty of time for someone to bounce back to Google and tap a faster competitor instead. The team could watch it happen in their analytics: high intent visitors arriving from search, then vanishing inside the first few seconds. Every one of those was a buyer the agents never got to talk to.
The cost was not only lost sessions. Slow pages and shaky Core Web Vitals were quietly dragging the whole catalogue down the rankings, in one of the most contested property markets anywhere. The marketing team was paying more for traffic that converted less, and leadership could feel the business leaking value month after month.
| Before | After | |
|---|---|---|
| Mobile load time | Several seconds | 0.9 seconds |
| Core Web Vitals | Failing on mobile | Green band |
| Search across listings | Slowed as catalogue grew | Under one second |
| Qualified leads | Baseline | Up 63 percent |
Once we looked past the loading spinner, the real issues were structural. Search ran straight against the main database, so the more listings the catalogue held, the slower a filter became, exactly the wrong way round for a portal that wanted to grow. Pages were assembled in the browser, which left search engines staring at thin HTML and left phones doing work they should never have been asked to do. URLs were messy, structured data was missing, and there was no clean way for marketing to see which journeys actually produced a lead. The site was not just slow. It was built in a shape that fought every goal the business had.
We rebuilt the portal from the ground up on Next.js, with a clear priority order: make it fast on a mid range phone first, make it easy for search engines to read second, and make every lead measurable third. Rendering moved to the server, listing pages were generated ahead of time and refreshed as inventory changed, and a dedicated search index took the pressure off the main database so a filter stays quick whether the catalogue holds two hundred thousand homes or two million.
Listings render on the server and ship ahead of time, so a phone receives finished HTML instead of building the page itself.
Search moved off the main database onto a tuned index that stays under one second across two million listings.
Image optimization, edge caching, and a strict performance budget pulled mobile load down to nine tenths of a second.
Clean URLs, structured data, and programmatic listing pages gave crawlers fast, readable HTML to index.
The capture flow is instrumented end to end, so marketing can see exactly which journeys turn into an enquiry.
Pages regenerate as inventory changes, keeping prices and availability current without rebuilding the whole catalogue.
The difference showed up first in the numbers the team had been worried about, then in the ones that pay the bills. Mobile pages now paint in about nine tenths of a second, comfortably inside the green band for Core Web Vitals, and search returns results in under a second even across two million indexed listings. As performance and structure improved together, rankings recovered and organic traffic climbed 28 percent. Most importantly, the agents started getting better. Within two quarters of launch, qualified leads were up 63 percent, because the people arriving from search were now staying long enough to enquire.
One moment stuck with the team. A senior agent had built a habit of apologising on calls while a listing crawled open on the prospect's phone, filling the silence so the buyer would not hang up. A few weeks after launch she mentioned, almost in passing, that she had stopped doing it, because the page was already there before she finished saying hello. Small as it sounds, that was the day the rebuild felt real to the people using it every day.
| Before | After | |
|---|---|---|
| Mobile load time | Several seconds | 0.9 seconds |
| Listings indexed | Partly crawled | 2 million indexed |
| Organic traffic | Baseline | Up 28 percent |
| Qualified leads | Baseline | Up 63 percent |
mobile load
listings indexed
more qualified leads
more organic traffic
Why speed paid for itself
In a market this competitive, the first second decides whether a buyer stays. Pulling mobile load under one second did not just improve a metric on a dashboard. It kept high intent visitors on the page long enough to become leads the agents could close.
The new portal is a different business to run. Pages open instantly on a phone, we are climbing back up the rankings, and the agents keep telling me the leads coming through are far better qualified than before.— Marketing Lead, a Berlin property platform
Facing something similar?
Share the product, failure or workflow. You get a prioritised action plan before any rebuild is on the table.
FAQ
Book a free consultation with our engineers.