Date: 2026-01-14
Data Period: 2024-2025
Analyst: Claude Code
Executive Summary
This analysis examines the correlation between listing inventory and views across Aqar’s top 5 property categories, with district-level granularity. Key findings:
Platform-wide correlation is weak (0.18) - adding more listings doesn’t proportionally increase views
Optimal inventory range: 140K-160K active listings platform-wide for maximum views/listing
Villa for Sale experiencing market-wide demand collapse (-30-40% YoY across all top districts)
Rental categories showing growth - Apartment for Rent and Villa for Rent are expanding
Geographic shift: Jeddah apartment sales growing while Riyadh declining
Part 1: Historical Correlation (2020-2025)
Listings vs Views Over Time
Year
New Listings
Total Views
Avg Views/Listing
Active Users
2020
808,832
672,973,495
678.89
N/A
2021
1,088,216
714,033,854
547.43
N/A
2022
1,178,584
622,827,389
445.38
1,406,625
2023
603,129
438,941,972
478.35
1,661,736
2024
392,380
437,583,087
868.29
1,875,887
2025
482,424
421,725,270
695.23
2,014,084
Key Observations
Listings dropped 67% from 2022 peak (1.18M) to 2024 low (392K)
Avg views/listing nearly doubled from 445 (2022) to 868 (2024)
Active users grew 43% from 2022 to 2025 despite inventory decline
2023 regulatory changes caused the dramatic listing drop (REGA licensing enforcement)
Part 2: Platform-Wide Optimal Inventory
Correlation Analysis
Metric
Value
Pearson Correlation (Listings ↔ Views)
0.178 (Weak)
Avg Monthly Listings
155,893
Avg Monthly Views
35.8M
Optimal Inventory Buckets
Inventory Range
Months
Avg Views/Listing
Engagement/Listing
< 140K
7
231
6.6
140K-160K
6
275
8.96
160K-180K
7
226
9.58
180K+
4
181
8.81
Optimal Platform Inventory: 140,000 - 160,000 active listings
At 180K+ listings, views per listing drop by 34% compared to optimal range.
Part 3: Category-Level Analysis
Correlation by Category
Category
Districts
Correlation
Avg District Views
Interpretation
Land for Sale
310
0.978
237K
Linear scaling
Villa for Rent
89
0.960
266K
Strong demand
Apartment for Rent
280
0.930
1.08M
Growth headroom
Villa for Sale
217
0.915
677K
Matched supply/demand
Apartment for Sale
173
0.661
405K
Saturated segments
Monthly Trends by Category
Category
Peak Month
Peak Views
2024→2025 Trend
Apartment for Rent
Aug 2024
18.5M
Growing (+21%)
Villa for Sale
Aug 2024
9.5M
Declining (-36%)
Land for Sale
Aug 2024
5.3M
Declining (-27%)
Apartment for Sale
Aug 2024
4.4M
Stable
Villa for Rent
Aug 2024
1.7M
Growing (+12%)
Part 4: District-Level Analysis
Apartment for Rent - Top Districts by Total Views
Rank
City
District
Total Views
YoY %
Trend
1
الرياض
النرجس
11.4M
+9.7%
Stable
2
الرياض
الملقا
8.5M
—7.7%
Stable
3
الرياض
العارض
8.3M
—5.8%
Stable
4
الرياض
ظهرة لبن
8.2M
+8.4%
Stable
5
الرياض
المونسية
7.7M
+4.3%
Stable
Fastest Growing (Apartment for Rent):
الرياض - السليمانية: +53.2% YoY
الخبر - الحمرا: +34.8% YoY
الدمام - الشعلة: +28.8% YoY
Villa for Sale - Top Districts (DECLINING)
Rank
City
District
Total Views
YoY %
Trend
1
الرياض
النرجس
7.2M
—29.9%
Declining
2
الرياض
العارض
5.6M
—31.5%
Declining
3
الرياض
الرمال
5.6M
—29.0%
Declining
4
الرياض
المهدية
5.2M
—39.4%
Declining
5
الرياض
طويق
4.3M
—38.7%
Declining
Critical Finding: Every top Villa for Sale district shows 29-40% YoY decline.
Land for Sale - Top Districts
Rank
City
District
Total Views
YoY %
Trend
1
الرياض
بنبان
4.0M
—22.2%
Declining
2
الرياض
النرجس
3.2M
—51.4%
Declining
3
الرياض
الشرق
2.9M
—30.9%
Declining
Villa for Rent - Fastest Growing
District
Total Views
YoY %
الرياض - الجنادرية
0.5M
+100.6%
الرياض - مطار الملك خالد
0.7M
+61.3%
الدمام - الشعلة
0.3M
+52.0%
Part 5: Optimal Inventory by District
Marginal Views per Listing by Inventory Size
Category
< 500
500-1K
1K-2K
2K-5K
5K+
Optimal
Apt for Rent
1,606
1,457
1,483
1,246
866
< 2K
Villa for Sale
1,382
1,188
850
1,018
705
< 1K
Villa for Rent
998
775
513
609
—
< 500
Apt for Sale
871
504
499
425
171
< 500
Land for Sale
510
520
516
577
514
Any
Recommended Optimal Inventory per District
Category
Optimal per District
Rationale
Apartment for Rent
1,000-2,000
Diminishing returns above 2K
Villa for Sale
500-1,000
Sharp decline above 1K
Villa for Rent
200-500
Premium market, small inventory
Apartment for Sale
300-500
Saturated in many districts
Land for Sale
Any
Linear returns (distribute evenly)
Part 6: Oversupplied vs Undersupplied Districts
Most Oversupplied (Reduce Inventory)
Category
City
District
Current
Optimal
Oversupply
Apt for Sale
الرياض
الجنادرية
209
12
+1,643%
Apt for Sale
الدمام
الشاطئ الغربي
132
10
+1,220%
Apt for Sale
الرياض
المهدية
794
75
+959%
Apt for Rent
الدمام
السيف
107
13
+720%
Most Undersupplied (Growth Opportunity)
Category
City
District
Current
Optimal
Gap
Apt for Rent
ابها
درة المنسك
38
73
—49%
Apt for Rent
جدة
الفروسية
37
55
—34%
Apt for Rent
جدة
الشاطئ
47
61
—23%
Apt for Rent
الدمام
طيبة
44
57
—23%
Part 7: Strategic Recommendations
Immediate Actions
Reduce Villa for Sale inventory in Riyadh by 20-30% - market-wide demand decline
Expand Apartment for Rent in growing districts:
السليمانية (+53% growth)
الحمرا in Khobar (+35% growth)
الشعلة in Dammam (+29% growth)
Redistribute Land for Sale from النرجس (-51%) to more stable areas
Market Positioning
Category
Strategy
Target Inventory
Apartment for Rent
Expand
25K → 30K
Villa for Sale
Contract
28K → 20K
Land for Sale
Redistribute
Maintain 28K, shift geography
Apartment for Sale
Shift to Jeddah
Maintain 32K
Villa for Rent
Focus premium
Maintain 5K
Key Metrics to Monitor
Views per listing threshold: Maintain above 500 platform-wide
Listings per active user ratio: Target 0.20-0.22
District saturation: Alert when oversupply exceeds 200%
Appendix: SQL Queries Used
Platform Correlation Query
WITH
monthly_data AS (
SELECT
toYear (toDate (day_time)) ASYEAR,
toMonth (toDate (day_time)) ASMONTH,
COUNT(DISTINCT id) AS listings,
SUM(views) AS views
FROM
sadb_stats_listings_stats FINAL
WHERE
day_time >0
AND _peerdb_is_deleted =0
AND toYear (toDate (day_time)) >=2024
AND toYear (toDate (day_time)) <=2025
GROUP BY
YEAR,
MONTH
)
SELECT
ROUND(corr(listings, views), 4) AS correlation_listings_views,
ROUND(avg(listings), 0) AS avg_monthly_listings,
ROUND(avg(views), 0) AS avg_monthly_views
FROM
monthly_data
District-Level Category Analysis Query
SELECT
d.city_name,
d.district_name,
SUM(s.views) AS total_views_2024_2025,
SUM(
CASE
WHEN toYear (toDate (s.day_time)) =2024THENs.views
ELSE0
END
) AS views_2024,
SUM(
CASE
WHEN toYear (toDate (s.day_time)) =2025THENs.views