RealEstateView — User Cabinet
Redesign & Mobile App
Client’s Challenge
RealEstateView is a major Australian real estate aggregator. Despite significant organic traffic, they were losing users due to an outdated personal cabinet (2011 design) and the complete absence of a mobile app — while 67% of their traffic already came from mobile devices.
Saved searches were limited to 3 with no alerts or comparison tools. A technical audit revealed 847 critical errors. The mortgage calculator was broken in 23% of browsers. Zero structured data existed for any property listings.
- User cabinet: 2011 design, zero mobile optimization
- No native mobile app — 67% mobile traffic on desktop-responsive
- Saved searches limited to 3 with no alerts
- 847 critical technical errors in Screaming Frog audit
- Mortgage calculator broken for 23% of browsers
- Zero structured data for 100% of property listings
How We Solved It
UX Research & Design
Analyzed user session recordings and conducted 15 user interviews. Redesigned cabinet with unlimited saved searches, real-time alerts, and property comparison tools.
React Native App
Built native iOS and Android app with push notifications for new listings matching saved criteria. Offline property viewing and map-based search.
Technical Debt Cleanup
847 critical errors identified and resolved: broken links, redirect chains, missing meta tags, duplicate content, and performance bottlenecks.
Schema & SEO
Property, LocalBusiness, and Review schema deployed. Complete technical SEO overhaul including sitemap optimization and internal linking strategy.
Mobile Optimization
Progressive web app features, image optimization, lazy loading, and responsive redesign targeting Core Web Vitals benchmarks.
Our Implementation
usePropertyAlerts.ts
// WebCoreLab — RealEstateView Property Alert Engine
import { useEffect, useCallback } from 'react';
export const usePropertyAlerts = (
userId: string,
savedSearches: SavedSearch[]
) => {
const { subscribe, lastMessage } = useWebSocket(
`wss://api.realestateview.com.au/alerts/${userId}`
);
const { sendPush } = usePushNotificatio
s();
const matchesSearch = useCallback(
(listi
g: Listi
g, search: SavedSearch): boolea
=> {
const dista
ce = calculateHaversi
eDista
ce(
listi
g.coordi
ates, getSuburbCoords(search.suburb)
);
return (
dista
ce <= search.radius &&
listi
g.bedrooms >= search.miBedrooms &&
listi
g.price <= search.maxPrice
);
}, []
);
useEffect(() => {
if (!lastMessage) return;
const listi
g = JSON.parse(lastMessage.data);
const matched = savedSearches.filter(
s => matchesSearch(listi
g, s)
);
if (matched.le
gth > 0) {
sendPush({
title: `New ${listi
g.bedrooms}BR i
${listi
g.suburb}`,
body: `$${(listi
g.price/1000).toFixed(0)}K`,
data: { listi
gId: listi
g.id }
});
}
}, [lastMessage]);
};
// 140,000+ active users | Alert→View co
version: 67%
Measurable Impact
Measured 6 months after app launch
“The new user cabinet and mobile app transformed our platform. Users went from saving 3 searches to creating 12+ on average. The real-time alerts feature alone drove a 67% increase in listing inquiries. App Store rating of 4.6 speaks for itself.”
— N.T., Product Director, PropTech Platform (NDA)