← Selected work · 01 — Proptech · Web + WhatsApp
Zedo: trust infrastructure for finding a home in Nigeria
I founded Zedo and designed it end to end. This case study goes deep on three decisions rather than wide on the whole product: what a search result should say when it isn’t an exact match, how an agent posts a listing once and has it everywhere, and how private paid listing groups stop leaking.
- Role
- Founder & Senior Product Designer
- Since
- Nov 2024, ongoing
- Surfaces
- Web app, WhatsApp, agent tools, admin console
- Live in
- Lagos, Abuja, Port Harcourt
The problem
Searching for a home in Nigeria is slow and hard to trust, and agents re-type and re-write every listing for each channel.
My role
Founder and Senior Product Designer: product strategy, AI search, agent tooling, trust model, admin console, visual system.
The result
Live in three cities with 591 registered users and 36 agents approved through identity verification (16 Oct 2026). This page shows three decisions in depth.

01 — The problem
Two people, one marketplace, one trust gap.
Zedo’s own promise is to find the right place in seconds, not weeks. It starts from the view that most property platforms were built to list properties, not to help someone decide.Public
There are two users and each has a specific, different problem. A seeker can’t tell which results really match what they asked, or which agent is real. An agent has the listing as a message in WhatsApp and has to rebuild it by hand as a form entry, a caption per network and a cover image. If listings are slow to arrive, there is nothing good to search. So I treat the two as one loop: faster, structured supply makes search worth trusting, and trusted search makes agents want to post.Judgement
The three deep dives below each take one specific problem from that loop. For each I state who is affected, what exactly is missing, why it matters, and which KPI it should move. I don’t claim a measured lift for any of them; the last section of each says how I would test it.
02 — My role
Founder, so I owned the whole stack of decisions.
I led product strategy, the search and listing experience, the agent tools, the trust and verification model, the admin console and the visual system, and shaped the transaction framework connecting seekers, landlords and agents.Public
The public surfaces are zedo.cc (opens in a new tab), zedo.cc/business (opens in a new tab) for agents, zedo.cc/elite (opens in a new tab) for the referral programme and zedo.cc/webinar (opens in a new tab) for onboarding. The screens below are from the signed-in app and the admin console, captured on 16 October 2026.
03 — Deep dive 1
When the exact match is one of five.
- Who
- A buyer who types a normal request, for example “3 bedroom duplex for sale in Ikeja”.
- What goes wrong
- Zedo searched 126,184 listings and found five plausible ones. Exactly one matches every term; the other four are 4 or 6 bedrooms. A list that shows all five alike makes the buyer open every card to find out how it differs. A list that shows only the exact one hides options a buyer might take, such as a fourth bedroom.Design-level
- What’s missing
- Not “more detail”. The missing information is the gap between each result and the request, stated in words on the card.
- Why it matters
- The next step is to contact an agent about a property priced in hundreds of millions of naira. A wrong guess costs a viewing, and a search that returns things that look wrong costs trust in the whole product.Judgement
- KPIs it should move
- Speed: time from search to first enquiry or viewing request. Conversion: share of searches that end in an enquiry. Trust: share of searches followed by a refinement because the first set felt wrong.
- 01
Say what it understood, as chips.
Above the results: “I understood · 3 bedrooms · Duplex · For sale · Ikeja”.
WhyA free-text box hides how the sentence was read. Chips make the interpretation checkable in one glance, before any card.Judgement
- 02
Show the work while it runs.
Four named steps tick off: Understood your request, Searching listings (126,184), Matching your requirements (5 found), Ranking the best matches, over skeleton cards in the shape of the results.
WhyThe corpus size and the match count set expectations, and a named step reads as progress where a spinner doesn’t.Judgement
- 03
Split Exact matches from Worth a look.
A green “Matches everything you asked” tag for the exact result; a separate group, “4, close, but not quite what you asked”, for the rest.
WhyThe split answers “is this what I asked for?” before the buyer reads a word of the card.
CostThe near group is longer than the exact one, so it can bury the best option if its range is too loose. See “What I’d fix next”.
- 04
Write the difference on the card.
“4 bedrooms, one more than you asked.” “6 bedrooms, 3 more than you asked.”
WhyA number mismatch is the commonest near-miss for a request like “3 bedroom”. Stating it removes a comparison the buyer would otherwise do by eye. It is amber rather than red because it is a difference, not an error.Judgement
- 05
Answer in one sentence, then offer the next question.
“The Opebi listing is the only exact three-bedroom match; the other four are larger Ikeja duplexes, priced between ₦220m and ₦2.1bn.” Below it, “Narrow it down” chips, including a non-filter question: “What are the title documents for the Opebi property?”
WhyAnswer first, with the price range as a sanity check. On a phone a second query costs typing, so the likely next question becomes a tap, and the title-document chip points at the question a buyer of property actually worries about.Judgement
- 06
Show provenance and freshness on every card.
“Source: PropertyPro.ng ↗”, “updated Sep 21”, and “verified Sep 28” where an agent is verified, plus a standing line: “Zedo AI suggests properties from available listings. Always confirm details with the agent.”
WhyAggregated listings are only as good as their source. Naming the source and the date lets the buyer calibrate how far to trust each card.Judgement
Use Reveal system to see the details I’d point to in a design review. Third-party listing photos and agent names are blurred.Design-level
Surface · the product




How I would test it
Hypothesis: labelled near-matches get enquired about at least as often as unlabelled ones, and searches need fewer refinements. Test: show the delta chip to half of searches and not the other half. Primary metric: enquiries per search. Secondary: refinement rate and time to first enquiry. Guardrail: click-through on the exact match must not fall. I have not run this test, so no result is claimed.Judgement
04 — Deep dive 2
Post once, and it goes everywhere.
- Who
- An agent or developer with a new listing, and a description they have already written in WhatsApp.
- What goes wrong
- The details exist as plain text in a chat. Posting means retyping them into a form, writing a separate caption for each network, and making an image. Zedo’s agent pages describe the fix as “no copy-pasting, no reformatting”.Public
- What’s missing
- Structured fields (price, location, rooms) from unstructured text, a caption written for each network, and a cover image, all without leaving one screen.
- Why it matters
- Search is only as good as the listings behind it, so how long it takes to post is a supply problem, not an agent convenience.Judgement
- KPIs it should move
- Speed: time from opening New listing to Post. Supply: listings posted per active agent per week. Reach: share of listings posted to at least one social channel.
- 01
Start from the brief, not the form.
The first field is “Your brief: Paste it from WhatsApp or describe the property. We fill in the rest.” Photos and the brief sit side by side.
WhyThe agent already has the text. Asking for it where it already exists removes the retyping.Judgement
- 02
Offer to fill the details; don’t do it silently.
A prompt appears: “Looks like a full brief. Pull out the price, location and rooms?” with Fill details, or dismiss. The result lands in a collapsed “Listing details: Filled in from your brief. Open to check or change.”
WhyA wrong price published silently is worse than one extra tap. An explicit offer and an “open to check” row keep the agent in charge.Judgement
CostOne extra tap on every listing.
- 03
Make the cover image from the first photo.
Five styles: Poster, Dark, Light, Minimal, Original photo. “Made from your first photo. Press and hold a photo above to change which one is first.”
WhySocial posts need an image carrying the price and the contact. The first photo is already the one the agent chose as the cover, so no new choice is needed.Judgement
- 04
One caption per network, each rewritable.
Tabs for X, Facebook, Instagram, Threads and LinkedIn, each with its own caption and a “Write again”. Five small badges show which channels are on.
WhyEach network has its own length and tone. Regenerating one caption shouldn’t disturb the others.Judgement
- 05
Timing is a choice with a safe default.
“Defaults to posting right away; pick a time only if you want to hold it until then.” Scheduling asks what should go live: Zedo + Social accounts, or Zedo only. A missing date gets a plain fix: “Pick a date and time, or switch back to Post now.”
WhyMost listings should go out now. Scheduling stays available, with its consequence spelled out and an error that says how to recover.Judgement





05 — Deep dive 3
Private listings that can’t quietly leak.
- Who
- A verified agent who wants to share listings with a trusted group and charge for access.
- What goes wrong
- Listings shared in a chat group can be forwarded, screenshotted and passed on, and the owner’s contact goes with them. When the contact leaks, the thing the agent sells is gone.Judgement
- What’s missing
- A way to make leaks traceable to a person, and a way to hold back owner contacts until a member’s identity is verified.
- Why it matters
- Without protection there is no reason to pay for access, so there is no reason for a host to run a Circle, and Zedo has no second revenue line beside subscriptions.Judgement
- KPIs it should move
- Paid members per Circle, renewals, and listings shared per Circle. For Zedo: revenue from Circle payments, where the product shows an expected next cycle of ₦9,000 from ₦10,000 “after Zedo’s cut”.
- 01
Choose who can see a listing at the moment of posting.
Two options, each with its consequence in plain words. Circle only: “Only your members see it. It’s watermarked with each member’s name and never cross-posted.” Public: “Everyone on Zedo, and cross-posted to your connected accounts.”
WhyThe choice is made where the stakes are clear, inside the same Post flow, and the watermark makes a leak traceable to a member.Judgement
- 02
Approve first, pay after.
“People request to join, and only pay once you approve them.”
WhyThe host controls who gets in, and nobody pays for a request that is then refused.
- 03
Identity checks as switches the host controls.
“Verification to join”, and separately “Verification for owner contacts: members must verify their identity before seeing who owns a property.”
WhyRevealing an owner’s contact is the sensitive moment, so it gets its own gate rather than riding on membership.Judgement
- 04
Pricing power is earned.
A new host starts at ₦10,000 a month. Higher steps open as the host climbs milestones: ₦20,000 at Level 3, up to ₦60,000 at Level 11. “Closest to done: share 3 listings (1 more listing to go).” Listing in Discover unlocks after Level 2.
WhyA new host can’t charge a premium before building a record, and members are protected from steep prices on unproven Circles.Judgement
- 05
Closing a Circle doesn’t cost members what they paid for.
“Members who have paid keep access until the end of the period they paid for, so no one loses time they bought.” Payouts: “Your share of every payment goes straight to your bank. Zedo never holds it.”
WhyA clean exit and a payout that doesn’t pass through Zedo are both trust features for the people paying and the person being paid.Judgement




06 — The wider system
The rest of the product, briefly.
The deep dives sit inside a larger product. These are the other surfaces, each shown once. Dark and light themes are both supported.Design-level








07 — Pricing and referral
Prices and earnings stated as plainly as the product.
Zedo has three plans: Free, Plus at ₦10,000 a month and Pro at ₦20,000 a month, with yearly options. The pricing page tells existing users what happens next: “Prices change January 1, 2027. Your plan is grandfathered at today’s rate, no action needed.”Public
The referral programme, Zedo Elite (opens in a new tab), pays 10% of every Pro payment a referred agent makes, paid by Zedo and never collected by the referrer. Switching it on requires identity verification. The earnings copy is careful: the public page says “Illustrative, not guaranteed”, and the in-app tracker says “An estimate, not a promise”.Public
I treat that wording as a design decision. Money copy that overpromises is the fastest way to lose the trust the rest of the product is built to earn.Judgement


08 — What’s live and measured
Shipped today.
- Plain-language AI search on web and on WhatsApp, 24/7, no app to install.Public
- Agent tools: post once to five networks, unified inbox, auto-repost, documents, commission and affordability calculators.Public
- Verified agents, ratings, saved-search alerts, viewing requests with time slots, and private paid Circles.Public
- An admin console covering users, revenue, listings and reports, Circles and the referral programme.Design-level
591
registered users, seekers and agents
36
agents approved through verification
214
listings posted by verified agents
126,184
listings searched, from all sources
Measured, 16 October 2026, from Zedo’s admin dashboard.Measured

Zedo is early. The numbers above are real and small, which is why this page argues from decisions and how they would be tested, not from a claimed lift. Verified agents are being onboarded city by city.
09 — What I’d fix next
Three specific things I would change.
1. “Close” is too generous in Worth a look
In the example, a 6-bedroom duplex at ₦2.1bn sits beside 4-bedroom ones at ₦220m to ₦350m for a request for 3 bedrooms. It is technically near, but it is not useful. I would bound near-matches by tolerance on bedrooms and price, or sort by closeness so outliers sink.Judgement
2. Missing data is shown as if it were data
Cards show a chip reading “Not Specified”. A buyer can’t tell whether that means the agent didn’t say or the property has none. I would replace it with an action, “Ask the agent”, and track how often it is tapped.Judgement
3. An unfinished listing loses its photos
The product says honestly, “Continuing your unfinished listing. Photos are not saved, so add them again.” For an agent with 14 photos that is a real cost. I would keep the media draft on the device so a refresh or a dropped connection doesn’t cost the upload.Judgement
And the badge doesn’t explain itself yet
A “Verified” tag is only as good as what it promises. Today the product doesn’t tell a seeker what was verified, by whom, or when. That is the next trust problem I’d design: a tappable, plain-language verification record on every badge.Judgement
10 — Where it started
The beta, before the current product.
Before the current public site and app, the product was a dark, chat-first web app. These are screens from that beta (2025), designed in Figma under my direction. Third-party listing photos and agent names are blurred.Design-level



11 — Roadmap
Not yet shipped.
Everything in this section is planned. None of it is live.
- Native iOS and Android apps (announced as coming soon).
- More cities beyond the first three.
- Voice search.
- A diaspora investment flow, and valuation and investment tools.
