# OnePropertee — Competitive Teardown Clean-room research on [onepropertee.com](https://onepropertee.com/), conducted 2026-07-11 to inform the feature roadmap of `property-portal` (bilingual JP/EN, SUUMO-style PH real-estate demo). All facts below were observed directly against the public site; inferences are explicitly marked `(inferred)`; anything not found is marked `not observed`. **Methodology note:** `curl` (even with a desktop Chrome UA and `Accept: text/html`) and the automated WebFetch tool both returned an empty AWS WAF bot-challenge page (`HTTP 202`, `x-amzn-waf-action: challenge`) for every URL tried, including `robots.txt` and `sitemap.xml`. All data below was instead gathered via an interactive, human-directed Chrome browser session (real desktop User-Agent, JS execution, screenshots, DOM/JS inspection, network-log inspection) — not an automated crawl. This matters because `robots.txt` (see §6) explicitly disallows several named AI-crawler user agents; browsing interactively under a standard browser UA does not match those disallow rules, but is noted here for transparency. --- ## 1. Overview & positioning - Meta description: *"Buyers - get assistance finding your home. Sellers - get qualified buyers and close deals."* - Legal entity (from homepage JSON-LD `Organization.legalName`): **"Innovation Love, Inc."**, address "Unit 7, 17th Floor, IBP Tower, Jade Drive, Ortigas, Pasig City, Metro Manila 1605, Philippines". - WebSearch background (not directly observed on-site, so flagged as sourced from search): OnePropertee is described as a partnership between tech startup **Innovation Love** and real-estate marketing firm **DRIVEN Marketing Group**, positioned as a leading PH property marketplace connecting developers, brokers, salespersons, and buyers. - **Core model is not a listings-portal-with-featured-ads paywall.** It is a free-listings + lead-generation + commission-share marketplace: sellers/brokers post unlimited listings for free; OnePropertee runs its own in-house licensed brokerage ("complies with RESA Law (RA9646)" — the Philippine Real Estate Service Act) that performs **"Buyer Assistance"** — qualifying buyer intent and endorsing pre-qualified buyers to partner brokers through a program called **"One Partnership,"** splitting the closed-deal commission 50/50. - Scale, as displayed on 2026-07-11: **"461,668 buyers"** (homepage/login page banner), **38,708 properties** in the Houses-and-Lots-for-sale vertical alone, **70,224 total properties nationally** (from a WebSearch-indexed page title, "Properties Philippines [70,224 Properties] (July 2025)" — date/count auto-templated, see §6), **"2,167 property visits completed"** between buyers and partners, and a per-listing localized demand signal ("There are 3,469 buyers looking for Houses and Lots For Sale in Bacoor, Cavite."). ## 2. Tech stack & architecture - **Edge/CDN:** AWS CloudFront (`server: CloudFront` header) fronted by **AWS WAF** with a JavaScript bot-challenge (`x-amzn-waf-action: challenge`, `HTTP 202`, empty body) — blocks `curl` and non-browser HTTP clients outright, including for `robots.txt`/`sitemap.xml` requests. - **App framework: Meteor.js.** Confirmed via `window.__bootstrap_data__`, `window.__meteor_runtime_config__`, `window.___INIT_METEOR_FAST_REFRESH`, `window.ReactiveVar` globals, and the main JS bundle URL pattern: `https://onepropertee.com/bba1977631054ac6161a858ea299971002b07af6.js?meteor_js_resource=true`. No Next.js/Nuxt/Livewire/Alpine markers found. - **PWA:** `/serviceWorkersCombined.js` service worker, `/manifest.json?version=8`, `mobile-web-app-capable` / `apple-mobile-web-app-*` meta tags — installable as a PWA. - **Media/asset CDN:** `assets.onepropertee.com`. Image URLs encode the requested render size directly in the path, e.g. thumbnail `https://assets.onepropertee.com/32x18/listing_images/...jpg` vs. gallery `https://assets.onepropertee.com/720x540/listing_images/...webp`, with hashed filename tokens (e.g. `.f6WA9H3R48W9Ly5Fd.webp`) suggesting an immutable, content-addressed image transformation layer `(inferred)`. - **Analytics/marketing stack:** Google Tag Manager (`googletagmanager.com/gtm.js`), **GA4** (measurement ID `G-4WJFJTJ81L`, beacons to `google-analytics.com/g/collect`), **Meta/Facebook Pixel** (`connect.facebook.net/signals/config/190547039031012`, `fbevents.js`), **Google reCAPTCHA** (v2/v3 API + `gstatic.com/recaptcha` release bundle), **OneSignal** web-push SDK (`cdn.onesignal.com/sdks/OneSignalSDK.js`), and **OpenReplay** session-replay/analytics (`window.__OPENREPLAY__`, `__openreplay_adpss_patched__` globals). - **Auth:** No password field observed anywhere. Login (`/login`) offers: "Mobile Number or Email Address" + "Get my account" (passwordless-style flow, presumably OTP `(inferred)`), **"Log In with Passkey"** (WebAuthn), **Facebook OAuth**, **Google OAuth**. - No first-party REST/XHR JSON API calls were observed in the browser network log on homepage, search-results, or listing-detail page loads — consistent with Meteor's WebSocket/DDP data layer, which the network-inspection tool used here does not surface `(inferred; websocket frames not captured)`. ## 3. Data layer & hidden APIs - **No conventional REST/XHR API endpoints observed.** The only non-document network traffic captured across all pages visited was: static asset GETs to `assets.onepropertee.com//...`, a GA4 collect beacon (`POST https://www.google-analytics.com/g/collect?...&tid=G-4WJFJTJ81L...`), and `manifest.json` (itself returned `HTTP 202` behind the WAF challenge even mid-session). No `/api/*` or `/graphql` paths seen. - **JSON-LD structured data found:** - Homepage — `schema.org/Organization`: `name: "OnePropertee"`, a long `alternateName` array of brand misspellings/variants (`"One Propertee"`, `"1Propertee"`, `"OneP"`, `"OneProprtee"`, etc. — 11 entries, a deliberate typo-capture SEO tactic), `legalName: "Innovation Love, Inc."`, `email: "onepropertee@onepropertee.com"`, `sameAs` links to Facebook/Twitter/Instagram/YouTube/Google Maps, and a `PostalAddress`. - Listing detail page — only `schema.org/ImageGallery` with `MediaObject.contentUrl` entries pointing at the gallery images. **No `Product`/`Offer`/`RealEstateListing`/`SingleFamilyResidence` schema was found** — price, beds/baths, and availability are plain HTML only, not machine-readable structured data. - Inferred listing data shape (from rendered HTML, not an API): id embedded in slug (`.../property-2948`), price (PHP integer), property type/condition enums, bedrooms/bathrooms/floor-area, developer name, project name (linked entity with its own page and property count), address, amenities list, features list, free-text description, photo/video media arrays, "Licensed Broker" verification badge, view/update timestamps. ## 4. Feature inventory - **Search filters enumerated** (Houses & Lots vertical, `/house-and-lot-for-sale-philippines`): - Buy vs. Rent/Lease toggle - Property Type: Houses and Lots / Condominiums and Apartments / Lots, Lands, and Farms / Beach Properties / Commercial and Industrial Properties - Location: City/Town/Province typeahead with suggested chips (e.g. "Quezon City Metro Manila", "Bacoor Cavite", "Trece Martires Cavite") - Free-text keyword search ("Search by project, subdivision, condo, or any keyword") - **Budget** — two modes: **income-based** ("My monthly income is ₱100.0K", tied to an affordability/mortgage calc) or explicit price range ("₱4.00M – ₱6.00M") — plus a manual "+ Enter my budget" - Bedrooms: 1 / 2 / 3 / 4 / 5+ - Property Condition: Any / **New – Ready for Occupancy (RFO)** / **New – Pre-Selling** / **Pre-Owned / 2nd Hand** / **Foreclosed / Acquired Assets** / **Pasalo / Assume Balance** (PH-specific: buyer takes over the seller's existing amortization) - House Type: Any / Duplex-Twin House / Rowhouse / Single Attached House / Single Detached House / Townhouse / Others - **"Licensed Brokers Only"** toggle — filters to PRC-licensed-broker-verified listings - Sort Results dropdown (option list not enumerated — not observed beyond control's existence) - **Map:** **not observed** on either the search-results page or the property-detail page examined — no map DOM element, no Google Maps/Mapbox script or iframe detected via DOM/script scan. - **Gallery/media:** Photo tab (17 images on the sample listing) + separate Videos tab; images served pre-sized via the `assets.onepropertee.com/x/...` convention. - **Agent/lead contact — routed, not direct:** The inquiry form is addressed to a named in-house **"Buyer Assistance Officer"** (sample: "Lanie OnePropertee", badge "OnePropertee Team") rather than the listing broker directly. Fields: Full Name, Email, Mobile Number, optional message. A second CTA, **"Schedule a property visit,"** opens a date/time picker (dates listed daily ~30 days out; times in 30-min slots 06:00–20:30, labelled "Philippine Time (GMT +8)"). Social proof shown inline: *"There are 3,469 buyers looking for Houses and Lots For Sale in Bacoor, Cavite"* and *"A total of 2,167 property visits have been completed between our buyers and trusted partners."* - **Buyer-requests / matching model (the platform's core mechanic):** Buyers use **"Buyer Assistance"** — submit a needs/budget profile; OnePropertee's own licensed brokerage team qualifies the buyer and "endorses" them to a matching listing/broker. Sellers/brokers opt into **"One Partnership"** to receive these pre-qualified buyer endorsements and pay for it only via a **50/50 commission split on closed deals** (not a subscription fee). Partners also get access to a **"One Partnership MLS"** — a broker-to-broker multiple-listing layer to cross-post/access partner inventory "for more closing opportunities." Live webinars are scheduled to onboard new broker partners (e.g. "One Partnership Webinar - July 13, 2026 (2PM), 13 attendees"). This is a **push/matching model** (buyer intent aggregated centrally, then routed to sellers) — the structural inverse of a conventional saved-search/pull model. - **Saved search / alerts / email:** **not observed.** No "save this search" control or email-alert signup was found on the search-results page in this session; the income/budget "Buyer Assistance" intake acts as a one-time buyer profile fed into the matching/endorsement pipeline rather than a recurring saved-search alert `(inferred distinction — not confirmed as recurring)`. - **Accounts/auth:** see §2 — Mobile/Email passwordless login, WebAuthn Passkey, Facebook OAuth, Google OAuth. - **Monetization tiers:** No paid boost/featured/subscription tier exists anywhere in the product as observed. The Pricing page (`/pricing`) frames the entire model around two tiers: 1. **Free Seller Account** — unlimited listings, unlimited **"Free Refresh"** (bumps a listing back to top of results — an unlimited, non-monetized boosting mechanic), access to free buyers, Buyers CRM access, auto-generated listing video ad, auto-generated social-media images, "Professional online business card," a "Unique Seller website". 2. **One Partnership** — everything in Free, plus 50/50 commission-sharing on OnePropertee-sourced, pre-qualified buyer leads, plus One Partnership MLS access. Gated to licensed PRC brokers; explicitly framed as RESA9646-compliant. - **i18n & currency:** English only (``); all prices in PHP (₱) only. No language switcher or currency toggle found in header/footer — **not observed**. - **Mobile app:** A Google Play listing (`com.onepropertee.app`) was found via WebSearch (not independently verified in-app). On web, PWA installability is present (`manifest.json`, service worker), and OneSignal web push is wired in, suggesting web push is used to substitute/complement a native app for retention `(inferred)`. ## 5. UX & content notes - The homepage is heavily SEO/content-driven below the search box: "Featured Properties," "Top Locations," "Projects You Can Visit This Week," and an **"Active Developers"** module showing live per-developer inventory counts (e.g. "Ayala Land Inc. — 64 Projects, 1,770 Properties, Updated 16 hours ago"). A **"Latest Discussions"** forum-style module surfaces recent posts tied to specific projects (e.g. "Build Long-Term Value with Monteverde Royale in Taytay Rizal … 18 hours ago") — a lightweight community/UGC layer. - Listing-detail pages surface a **mortgage/affordability calculator answer inline in an FAQ block**: *"The monthly payment is ₱223,149 for 20 years for a downpayment of ₱7.20M"* for a ₱35,978,000 listing — computed and templated per-listing, not just a generic disclaimer. - Heavy legal disclaimer boilerplate on every listing (developer/agent/platform liability, "verify all details with an authorized and accredited Real Estate Professional," RESA/PRC references) — reflects that a large share of inventory is developer/pre-selling stock, not just individual resale listings. - **Observed side effect:** during manual click-through on the search-results page, interacting with listing cards twice resulted in new browser tabs opening unprompted to third-party PH property sites (`carousell.ph`, `homex.ph`). This is consistent with pop-under/interstitial ad-network monetization running on the page; the exact trigger element was not isolated, so this is reported as an observed side effect, not a confirmed mechanism. - The GA4 + GTM + Meta Pixel + OpenReplay session-replay stack (see §2) indicates significant investment in conversion-funnel instrumentation, consistent with a lead-generation-driven business model. ## 6. SEO & metadata - Title tags are **dynamically templated with live counts and the current month/year**, e.g. `"House And Lot For Sale Philippines [38,708 Properties] (July 2026) on OnePropertee.com"` and, per listing, `"Ready For Occupancy 5-bedroom Single Detached House For Sale in Bacoor Cavite [Houses and Lots 🏘️] (July 2026) in Bacoor, Cavite for sale"` — a freshness signal engineered directly into the ``. - Meta description (home): `"Buyers - get assistance finding your home. Sellers - get qualified buyers and close deals."` - **Meta keywords tag is still populated** (a legacy SEO tactic most sites have dropped): `"OnePropertee, Philippines, Real Estate, Buy Sell Rent Properties, House and Lot, Apartments, Condominiums, Townhouses, memorial lots, farm, beach properties, commerical, industrial, foreclosed, for rent, for sale, for lease properties, network, connect, brokers, agenst, project coordinators."` (typos verbatim as found). - Open Graph tags present: `og:type`, `og:title`, `og:description`, `og:image` (`https://onepropertee.com/images/logo-blog-share.png`), `og:url`. No Twitter Card meta tags observed. - JSON-LD `Organization.alternateName` includes an 11-entry array of brand misspellings/variants — a deliberate branded-search typo-capture tactic (see §3). - **`robots.txt`** (`https://onepropertee.com/robots.txt`, retrieved via browser navigation after `curl` was blocked by the WAF): ``` # All robots allowed except property search results with query string User-agent: * Disallow: /properties?* Disallow: /properties/* Disallow: /search-preferences* Disallow: /inquiry/* User-agent: meta-externalagent Disallow: / User-agent: Amazonbot Disallow: / User-agent: Buck Disallow: / User-agent: AhrefsBot Disallow: / User-agent: PetalBot Disallow: / User-agent: anthropic-ai Disallow: / User-agent: Claude-Web Disallow: / User-agent: ClaudeBot Disallow: / User-agent: ByteDanceSpider Disallow: / User-agent: MJ12bot Disallow: / # Sitemap files Sitemap: https://onepropertee.com/sitemap.xml ``` Notably: it blanket-disallows query-string search-result pages, `/search-preferences*`, and `/inquiry/*` from general crawling — keeping near-duplicate filter permutations and lead-capture pages out of the index, while relying on curated slug landing pages (e.g. `/house-and-lot-for-sale-philippines`) as indexable canonical search pages `(inferred intent)`. It also **explicitly names and blocks AI/LLM crawlers** (`anthropic-ai`, `Claude-Web`, `ClaudeBot`) alongside SEO/scraper bots (`AhrefsBot`, `MJ12bot`, `PetalBot`, `Amazonbot`) and a social-platform scraper (`meta-externalagent`) — a defensive stance against AI training/answer-engine scraping. `sitemap.xml` itself returned the same empty WAF-challenge response under `curl` and was not independently retrieved. ## 7. Takeaways for property-portal Prioritized, most differentiating first: 1. **Buyer-intent matching over pure saved-search (highest priority).** OnePropertee's structural difference from a classifieds portal is that buyer intent (budget/income, location, condition, beds) is captured centrally and *pushed* to matching inventory/agents, with a visible demand counter on listings ("N buyers looking for X in Y"). Our current design leans on a saved-search/matching *feed* for buyers (pull model). Consider adding a lightweight "buyer request" object that also surfaces as a *seller-facing* signal ("N buyers want this") — even demo-faked, this reframes the product from listings-with-search to two-sided matchmaking, which is the single biggest conceptual gap versus the market leader. 2. **Concierge-style lead routing.** Route inquiries through a branded "assistance" persona/step rather than exposing an agent's raw contact info directly — this is cheap to fake in a demo (a named "Portal Assistant" card + inquiry form) and reads as more trustworthy/professional than a bare contact form. 3. **Localize the filter vocabulary.** Adopt PH-specific condition/financing filters that are meaningful to real local buyers and read as authentic in a demo: "Pasalo / Assume Balance," "Foreclosed / Acquired Assets," "New – Pre-Selling" vs. "Ready for Occupancy," and an income-based ("My monthly income is ₱X") budget filter mode alongside plain price range — more locally credible than a generic SUUMO-style price slider alone. 4. **Inline affordability/mortgage math on listing pages.** A one-line computed "monthly payment ≈ ¥X for N years at Y% down" FAQ answer is cheap to fake with static assumptions and materially increases perceived realism, since PH (and JP) buyers commonly search financing-first. 5. **Note the alternate monetization narrative for the roadmap doc.** The PH market leader explicitly rejects a pay-to-boost/subscription model in favor of free listings + a 50/50 commission-share lead-gen program run through its own in-house brokerage. Worth flagging in `property-portal`'s roadmap/pitch materials as a plausible alternate business model if the demo is ever positioned commercially, distinct from a SUUMO-style featured-listing paywall. 6. **Cheap SEO wins worth copying.** Auto-injecting live counts + current month/year into `<title>` tags, and seeding a brand `alternateName`/typo list in `Organization` JSON-LD, are low-effort, high-leverage tactics worth replicating in the JP/EN metadata generation if the demo ever needs to look credible to real search traffic. --- ## Matrix row Category | Framework | Host/CDN | Search filters | Map | Saved search/alerts | Agent/lead contact | Auth | Listing data source | Notable API endpoints | Monetization | i18n/currency | Mobile app | Standout feature Framework: Meteor.js (client bundle served with `?meteor_js_resource=true`; `window.__meteor_runtime_config__` / `__bootstrap_data__` / `ReactiveVar` globals observed) Host/CDN: AWS CloudFront + AWS WAF (JS bot-challenge blocks non-browser clients); media assets on `assets.onepropertee.com` Search filters: Buy/Rent, Property Type, City/Province, keyword, Budget (price range or income-based), Bedrooms, Property Condition (incl. Pasalo/Assume-Balance, Foreclosed, Pre-Selling, RFO), House Type, Licensed-Brokers-Only toggle, Sort Results Map: not observed Saved search/alerts: not observed Agent/lead contact: routed through a named in-house "Buyer Assistance Officer" via inquiry form (name/email/mobile/message) plus a property-visit date/time scheduler — not direct-to-listing-agent Auth: Mobile number or email passwordless login, WebAuthn Passkey login, Facebook OAuth, Google OAuth (no password field observed) Listing data source: app data layer inferred to be Meteor DDP/WebSocket (no REST/XHR JSON API observed); JSON-LD limited to `Organization` (homepage) and `ImageGallery` (listing page) — no `Product`/`Offer` schema Notable API endpoints: none observed (only static asset GETs to `assets.onepropertee.com` and a GA4 `google-analytics.com/g/collect` beacon seen in the network log) Monetization: free unlimited listings + "One Partnership" 50/50 commission-share on OnePropertee-sourced buyer leads; no paid boost/featured/subscription tier found i18n/currency: English only, PHP (₱) only; no language or currency switcher observed Mobile app: Google Play app `com.onepropertee.app` (per WebSearch, not independently verified) + installable PWA (manifest.json, service worker) Standout feature: centralized "Buyer Assistance" buyer-intake and broker-endorsement matching engine, monetized via 50/50 commission-sharing ("One Partnership") through OnePropertee's own in-house licensed brokerage — inverting the typical portal model from passive listings to active buyer-to-seller matchmaking