Inspiration
When a company loses touch with the owner of an account, the money goes to the state and waits to be claimed. California alone is holding more than $15 billion in unclaimed property, across more than 84 million individual properties (State Controller's Office, Feb 2026). The state notes that contact is often lost when an owner forgets an account exists, and sometimes the owner dies "with heirs who have no knowledge of the property" (SCO).
That describes a lot of older adults, especially those living with memory loss. The person who could claim that money is often an adult child managing a parent's affairs, who doesn't know it exists or where to look. Kinnest is built for that caregiver.
What it does
- Add the family member you look after: their name and the cities they've lived in.
- Kinnest searches California's official unclaimed property records and shows each match: the amount, the type of property and the company that held it.
- Each match explains how to claim it in three steps: gather documents, file on the state's portal, get paid by the state.
- A plain-language documents checklist covers what a caregiver needs to file for a parent, including when a power of attorney or estate papers are required.
- One tap opens the state's official claim portal. Kinnest links to the official search sites for Texas and New York too.
- Reminders nudge the caregiver about claims they haven't filed yet.
Kinnest never files claims, never touches the money and never takes a percentage. Claiming from the state is free (SCO), and Kinnest keeps it that way.
How we built it
- App: Flutter (Dart), iOS.
- Backend: Supabase (Postgres, Auth). Row-level security scopes every profile, match and checklist to its owner.
- Data: California's State Controller publishes its full unclaimed property database as CSV. A Python import script downloads it, keeps records of $2,500 and up (about 795,000 of them) and loads them into Postgres. Matching runs in a Postgres function: every word of the parent's name must appear in the record's owner name, in any order, and the record must be at one of the places they've lived (by ZIP when given, otherwise by city). We started with looser trigram matching and tightened it after it surfaced same-named strangers, because a caregiver should see their own parent, not everyone with a similar name. A scan is one call.
- Subscriptions: RevenueCat (
purchases_flutter). Onepremiumentitlement, monthly and annual products with a 1-week free trial, entitlement state read live from the SDK. - Reminders: on-device local notifications. No analytics or ad SDKs.
Challenges we ran into
- Getting the data. The state's download page sits behind bot protection, but the data files themselves are hosted on S3/CloudFront and can be fetched by script.
- Fitting it. The smallest bulk file CA offers ($500 and up) is about 3.76 million rows, too large for our database plan. We measured the real distribution and chose a $2,500 floor: the highest-value fifth of the records.
- Scope. With 15 days of build time left, we cut multi-user family linking and a family trivia game from v1 to ship a smaller app that is finished and works end to end.
- Privacy in our own marketing. Store screenshots, the demo video and the review account use fictional sample records, checked against the real data so no real person's name or money appears.
Accomplishments that we're proud of
- A real data pipeline on official state records, not a mockup.
- A claim flow that sends families to the official portal instead of a paid middleman.
- A clear paywall that gates one thing, the number of family members, and keeps the core scan-and-claim flow free.
What we learned
- For a caregiver, a wrong match is worse than no match. Our first matching showed every similarly named stranger in a city. A worried family member can't tell those apart, and a stranger's money on the screen raises false hope. We tightened matching so a caregiver sees their own parent.
- Public data is about real people. The state publishes these records so owners can find their money, and every row is someone's name and address. That shaped what we collect (a name and past places, nothing more) and how we show results.
- Even marketing has to protect them. Our store screenshots, demo video and review account use fictional records, checked against the real data so no real person's name or money appears anywhere we promote the app.
What's next for Kinnest
Unclaimed money is where Kinnest starts, not where it ends. Families come to us for one urgent task, and they stay with an ongoing job: looking after an aging parent. Kinnest is being built for that job, around the needs of older adults and with their caregivers in control.
- Keep the money search working for them. More states beyond California, scheduled rescans so new matches appear on their own, and a lower amount floor ($500) once the database plan allows it.
- Family linking. Siblings share one parent's profile, so care is split instead of falling on one person. The database tables for it already exist.
- A simple app for the parent, set up by the caregiver. The caregiver plans the day (activities, appointments, reminders) and the parent sees one clear screen with large text and nothing to configure.
- Daily reminders. Medication times, drinking water and other small routines the caregiver sets once, with a gentle prompt on the parent's phone. The caregiver sees what was done and what was missed, without calling five times a day.
- Staying active. Gentle daily movement goals and walk reminders that the caregiver can follow from their own phone. Encouragement, not medical monitoring.
- Games and activities for the mind. Short daily puzzles and activities built for older eyes and hands. At the center is family memory trivia: family members write questions from their own shared memories ("Where did we spend summer 1985?") and the parent plays them. It keeps the mind engaged and gives the family a reason to connect every day. The trivia data models are already in the app, switched off until release.
- A daily journal. The parent can write or dictate a few lines about their day, and choose what the family sees. Their stories stay theirs, and the family stays close to how they really are.
Each step makes Kinnest something a family opens every day, not once. That is what turns a one-time search into a subscription families keep.
Built With
- dart
- flutter
- github
- ios
- postgresql
- python
- revenuecat
- riverpod
- storekit
- supabase
Log in or sign up for Devpost to join the conversation.