About the Project
RentSense is an AI-powered system that helps people choose where to live by turning “quality of life” into a personalized, data-driven decision.
Housing choice is inherently multi-dimensional. Safety, noise, green space, commute time, education, jobs, and affordability all matter — but not equally, and not in the same way for everyone. Existing platforms reduce this complexity to rent and photos, forcing users to guess how a neighbourhood will actually affect their daily life.
RentSense reframes housing as a multi-criteria decision problem and builds an engine that can reason about trade-offs at neighbourhood scale.
Data & Neighbourhood Scoring
We built a data pipeline that aggregates multiple open public datasets into a single, consistent geographic unit: New York City Neighbourhood Tabulation Areas (NTAs). Each dataset came in a different format — including point locations, ZIP codes, census areas, and raw addresses — so we wrote custom Python scripts to map every signal onto NTAs using spatial joins and aggregation, and used Woodwide AI for anomaly and null value detection in each dataset. These signals include sources like NYPD crime reports, NYC 311 noise complaints, parks and green space data, transit access, school locations, business density, voting patterns, and rent data. Each dimension is independently normalized so neighbourhoods are directly comparable, resulting in a structured dataset where every NTA has a vector of quality-of-life scores.
Two User Modes
RentSense supports two distinct user flows based on how much context the user already has.
Newcomer Mode (Discovery)
For users new to NYC, the challenge is not knowing what trade-offs to consider.
RentSense uses a Gemini-powered conversational engine to analyze free-form input and classify preferences as clear, ambiguous, or missing across quality-of-life dimensions. It then asks short, contextual follow-up questions — not a fixed survey — to clarify priorities and surface blind spots.
Each response dynamically updates the weights assigned to dimensions, producing a personalized Value Profile that reflects how the user wants to live.
Experienced Mode (Migration)
For users already living in NYC, RentSense treats their current neighbourhood as revealed preference data.
Users provide their ZIP code and describe what they like and dislike about where they live. The system extracts which dimensions are driving satisfaction or frustration and reweights the model accordingly. It then searches for neighbourhoods that preserve what the user values while improving what isn’t working.
Decision Engine
From the final preference weights, RentSense generates two rankings:
Fit Index — overall quality of life based on user preferences
Value for Money — quality of life per dollar, highlighting high-value neighbourhoods
These rankings update instantly as preferences change, allowing users to explore trade-offs rather than commit to a single static score.
Design Philosophy
RentSense is designed around a simple principle: housing decisions should reflect real priorities, not abstract rankings.
The goal isn’t to optimize for an idealized version of “the best place to live,” but to help people find the neighbourhood that offers the best balance of quality of life and affordability for them.


Log in or sign up for Devpost to join the conversation.