Case study · Finance · iPhone and Apple Watch

Track Record: seeing whose stock tips beat the S&P 500

Stock tips come from everywhere: friends, podcasts, videos and the news. Most people who hear them never act, and nobody keeps score. Track Record turns each tip into a pretend $1,000 and compares it with the same $1,000 in the S&P 500 over the same dates. Over time, every person, show and strategy gets a record, so you can see whose tips were worth listening to, with real numbers instead of hunches.

Context

My own product, for people who hear stock tips but rarely act on them

My role

Product designer and design technologist. I designed both apps and built them, along with the server that scores tips

Built with

SwiftUI and SwiftData with iCloud, a TypeScript server, Claude and Apple Intelligence

Runs on

iPhone and Apple Watch, plus widgets, the watch face and the Share sheet

In App Store reviewSubmitted November 6, 2026

See the app
Track Record's Tips screen: all tips, +$1,547 vs the S&P 500. Your tips $25,384, up 10.4%. S&P 500, same dates, $23,837, up 3.6%. 14 of 23 beat, as of the Nov 5, 2026 close. Below, tips beating the S&P 500: SBUX from Maria from work, PYPL and COST from Weekend Money Show, DIS from Uncle Ray. Track Record's Tips screen: all tips, +$1,547 vs the S&P 500. Your tips $25,384, up 10.4%. S&P 500, same dates, $23,837, up 3.6%. 14 of 23 beat, as of the Nov 5, 2026 close. Below, tips beating the S&P 500: SBUX from Maria from work, PYPL and COST from Weekend Money Show, DIS from Uncle Ray.
Track Record on the Apple Watch: 14 of 23 tips beating the S&P 500, a tally bar, and the latest tips starting with SBUX, $986, Hit.

23 tips from five sources, scored against the S&P 500 after every market close.

01 · The problem

Everyone has a stock tip, and nobody keeps score

An uncle swears by Nvidia. A weekend podcast likes Costco. A coworker is sure Google can’t lose.

Someone who doesn’t invest hears this kind of advice all the time and has no way to tell who is right. Memory keeps the lucky calls and drops the rest, and “it went up” doesn’t say much when the whole market went up too.

Services that score stock picks already exist, but they score public analysts and big creators. Nobody scores the people and shows a person actually listens to: a friend, a family member, a niche podcast. So the question Track Record answers is narrow: if you had followed this source, would you have done better than just buying the S&P 500?

$1,000

of pretend money per tip, measured against the same $1,000 in the S&P 500 over exactly the same dates.

Every source is judged on the same stake, so records compare

5

scored tips before a source gets a percentage. Under that it’s an early read, like “1 of 2 beat”.

One lucky tip would otherwise read as 100%

0

share prices on any screen. The app shows results, like “$1,000 is now $1,163”, and the prices stay on the server.

A limit set by market data licenses

−100%

is the most a “going down” call can lose, so the dollars, the percentage and the average always agree.

A pretend $1,000 can’t lose more than $1,000

A tip’s pretend start is the last market close before you heard it, so it never uses a price you couldn’t have seen. Tips you remember from months ago can be added with the date you heard them. They score right away and are labeled Backfill.

What these numbers are. They’re the rules Track Record holds itself to, not research findings, and both the app and the server test them. The sources on this page are made up for the screenshots. Their scores are real, worked out from end-of-day closing prices as of November 5, 2026.

02 · Constraints

What the design had to work within

Most of these limit what the app can say about money and what it can show.

It can’t act like an investing app

Apple says apps for investing or managing money should come from the financial institution that provides the service. So Track Record is pretend money only: no trades, no brokerage, no buy buttons, and it never says what to buy or sell. App Store Review Guidelines, 3.2.1(viii)

Prices can’t be shown

Scores come from a paid end-of-day data plan, and market data terms limit what an app may display. The server fetches the prices and does the math, and the app only ever gets results. That also ruled out a chart of the pretend $1,000 over time. Tiingo terms of service, section 1.6(c), and Marketstack’s commercial plan

AI needs permission and a fallback

Sending what someone shares to a third-party AI needs their explicit permission first, and an app should offer another way for people who say no. So Claude is asked for by name, and without it Apple Intelligence works on the iPhone, or the tip is typed. App Store Review Guidelines, 5.1.1(iv) and 5.1.2(i)

Videos can’t be downloaded

YouTube’s policies don’t let an app download or store a video’s audio, so a shared video saves only its link and the moment you were watching, and you say or type the tip. Podcasts are read only when the publisher provides a transcript in its feed. YouTube API developer policies and the Podcasting 2.0 transcript tag

Built on a banking design system

Track Record is the first native app on Kinetic, the design system I made for a banking app. In Kinetic, green means money arriving. A pretend result needed its own meaning, so ahead takes the brand accent and behind is a calm gray, never red: a pretend loss isn’t an error.

Tips stay private

No account, no ads and no tracking. Tips live on the iPhone and in the person’s private iCloud. Scoring sends tickers, directions and dates, never names, notes or quotes, and a friend’s name stays off the lock screen, widget and Watch.

03 · Decisions

Three decisions that shaped it

Each card says what the decision cost and what I kept from the other options.

Decision 1
Score every tip against the S&P 500

What I chose

Each tip becomes a pretend $1,000, compared with the same $1,000 in the S&P 500 over identical dates and scored again after every market close. A tip that beats the index is a Hit. One that matches it exactly is a Tie, not a win.

What else I considered

Showing how much the stock went up since the tip. Or a star rating for each source.

Why

A stock that rose 10% while the S&P 500 rose 15% did worse than simply buying the index. Only the index over the same dates says whether a tip was worth acting on, and dollars read more plainly than returns to someone who doesn’t invest.

What I gave up

Real amounts. Every tip uses the same $1,000, so a source’s record never depends on how much someone imagined putting in.

What I kept

The question “what if I’d put in more?” What if scales any tip’s result to another amount without changing a single score.

Decision 2
No percentage until five scored tips

What I chose

Under five scored tips, a source is an early read: “1 of 2 tips beat the S&P 500”, with no percentage and no rank. From five on it gets a hit rate, an average and a place in the ranking.

What else I considered

A hit rate from the first tip, the way most scorecards work.

Why

One lucky tip reads as 100%, and a percentage looks far more certain than two tips can be. The free plan holds five tips for the same reason: enough to watch one source move past an early read.

What I gave up

A tidy ranking from day one. New sources wait below the ranked ones until they have enough tips.

What I kept

The count. Every score says how many tips it rests on, and the bar under it fills one tip at a time.

Decision 3
AI finds tips, people confirm them

What I chose

AI reads shared pages, screenshots, voice notes and podcast transcripts and suggests the tips in them. Every suggestion goes to a Check the Tips screen with the exact quote, and nothing saves on its own. AI never works out a score.

What else I considered

Saving what AI finds automatically. Or letting AI rate a source.

Why

A wrong ticker or a misread “falling” would quietly spoil a record. So any suggestion whose quote isn’t word for word in the text, or whose ticker the market data doesn’t know, is dropped before anyone sees it.

What I gave up

Speed. Each capture has one more screen before a tip is saved.

What I kept

Typing. Every way in ends in the same form, and typing a tip works with no AI at all.

04 · The scenario

Five sources and 23 tips

Every screen on this page shows the same five sources.

Three of them are people and shows, logged as remembered tips from earlier in the year. Two are strategies from the app’s library. Together the 23 pretend $1,000s are worth $25,384. The same money in the S&P 500 over the same dates would be worth $23,837, so the tips are ahead by $1,547.

The five sources in the screenshots, with their tips and their record against the S&P 500 as of the November 5, 2026 close
Source Tips Record against the S&P 500
Weekend Money Show A podcast. Six tips, including Intel going down 5 of 6 beat83%, +16.5 points on average. Ranked first
Uncle Ray A person. Five tips, including Tesla going down 4 of 5 beat80%, +10.4 points on average
Buy the Dip A strategy. Five tips, each closed after one month 4 of 5 beat80%, +4.2 points on average
Just Buy the Index A strategy. Five tips, all SPY, the S&P 500 itself TieTies the index by design. The line to beat
Maria from work A person. Two tips, Google and Starbucks Early read1 of 2 beat. Three more scored tips for a full score
05 · The app

Seven moments, from hearing a tip to a record

Track Record on the iPhone and the Apple Watch, in the order someone meets each screen.

Add a tip · three short steps

Typing a tip you heard

The first step asks only for the ticker and whether it’s going up or down. The ticker is checked against market data as you type, so a tip that can never be scored doesn’t get saved.

The second step asks who said it. Picking a source shows its record so far, like Maria’s early read of 1 of 2, with “Past results only, not a prediction.” The third step is optional: the day you heard it, when to close the pretend trade, and their words.

Add Tip, step 2 of 3: Who said it? Maria from work is selected among chips for Weekend Money Show, Uncle Ray, Buy the Dip, Just Buy the Index and New. A card reads: Maria from work, early read, 1 of 2 tips beat the S&P 500. $2,000 to $1,754 vs $1,926 for the S&P 500. Past results only, not a prediction. Heard via: Friend. Back and Next buttons. Add Tip, step 2 of 3: Who said it? Maria from work is selected among chips for Weekend Money Show, Uncle Ray, Buy the Dip, Just Buy the Index and New. A card reads: Maria from work, early read, 1 of 2 tips beat the S&P 500. $2,000 to $1,754 vs $1,926 for the S&P 500. Past results only, not a prediction. Heard via: Friend. Back and Next buttons.

Find tips · a pasted note

Checking what the AI found

A note says Dana is buying Costco and Lee thinks Intel will keep falling. Without permission to use Claude, Apple Intelligence reads it on the iPhone and nothing leaves the device.

Each suggestion shows its exact quote and who said it, with a switch to keep it and a way to fix the ticker or direction. Here it found Intel and missed Costco, which is why the screen exists: a person checks every tip before it’s saved, and anything missed is quick to type.

Check the Tips: found 1 tip. INTC, Intel, kept, going down, with the quote: Intel will keep falling this year, from Lee. AI can be wrong. You check every tip against its quote before it's saved. Found with Apple Intelligence, on this iPhone. Who said it: a new source named Lee, kind Person. Heard on Nov 6, 2026. Check the Tips: found 1 tip. INTC, Intel, kept, going down, with the quote: Intel will keep falling this year, from Lee. AI can be wrong. You check every tip against its quote before it's saved. Found with Apple Intelligence, on this iPhone. Who said it: a new source named Lee, kind Person. Heard on Nov 6, 2026.

Tips · after the November 5 close

Every tip at a glance

The top card adds up every pretend $1,000 and sets it beside the same dollars in the S&P 500. A bar shows 14 of 23 tips beating the index, as a count rather than a percentage.

Below it, tips are grouped as beating, even with, behind or waiting for a score. Each row shows its lead in points and the pretend dollars. The Watch carries the same count on the wrist and on the watch face.

The Tips screen: +$1,547 vs the S&P 500. Your tips $25,384, up 10.4%, against $23,837 in the S&P 500 over the same dates. 14 of 23 beat, Nov 5, 2026 close. Beating the S&P 500, 14: SBUX +4.2 points, PYPL +5.0, COST +19.2, DIS +19.4. The Tips screen: +$1,547 vs the S&P 500. Your tips $25,384, up 10.4%, against $23,837 in the S&P 500 over the same dates. 14 of 23 beat, Nov 5, 2026 close. Beating the S&P 500, 14: SBUX +4.2 points, PYPL +5.0, COST +19.2, DIS +19.4.
The Watch's latest tips: COST from Weekend Money Show, $1,163, Hit. DIS, $1,178, Hit. GOOGL, $768.

A tip · Costco, from the podcast

One tip, one plain answer

The pretend $1,000 is now $1,163. The same $1,000 in the S&P 500 would be $971, so the tip beat the index by 19.2 points. The Hit badge carries a word and a dot, so the result never depends on color alone.

What if shows the same result at $100, $500, $5,000, $10,000 or any amount you type, and every score still uses $1,000. Further down are the quote, the day it was heard, the biggest drop along the way, and checkpoints at 30 days, 90 days and a year.

The COST tip from Weekend Money Show, going up, Backfill: $1,163, Hit. Your $1,000 is $1,163, up 16.3%. S&P 500, same dates, $971, down 2.9%. Beat the S&P 500 by 19.2 points. What if, with $5,000 selected: your $5,000 is $5,815 against $4,855 in the S&P 500. The COST tip from Weekend Money Show, going up, Backfill: $1,163, Hit. Your $1,000 is $1,163, up 16.3%. S&P 500, same dates, $971, down 2.9%. Beat the S&P 500 by 19.2 points. What if, with $5,000 selected: your $5,000 is $5,815 against $4,855 in the S&P 500.
A tip on the Watch: DIS, going up. Your pretend $1,000 is now $1,178, up 17.8%. S&P 500 (SPY): $984, down 1.6%.

A source · six scored tips

A record you can check

Weekend Money Show has six scored tips, so it gets a hit rate: 83%, 5 of 6 beat, by 16.5 points on average. The count sits right under the percentage, and a note says all six were logged after the day they were heard.

“If you’d followed them” adds it up: $6,000 became $7,082, against $6,092 in the S&P 500, or $990 more. A short summary says the same thing in plain words, worked out only from these numbers and never from the source’s name.

Weekend Money Show, a podcast: 83%. 5 of 6 tips beat the S&P 500, with a tally bar. Average: +16.5 points vs the S&P 500. Includes 6 backfilled tips. If you'd followed them: $6,000 to $7,082, S&P 500 $6,000 to $6,092, $990 more than the S&P 500. 6 scored tips, pretend money. Summary: 5 of 6 tips from this source beat the S&P 500, by +16.5 points on average. Weekend Money Show, a podcast: 83%. 5 of 6 tips beat the S&P 500, with a tally bar. Average: +16.5 points vs the S&P 500. Includes 6 backfilled tips. If you'd followed them: $6,000 to $7,082, S&P 500 $6,000 to $6,092, $990 more than the S&P 500. 6 scored tips, pretend money. Summary: 5 of 6 tips from this source beat the S&P 500, by +16.5 points on average.

A source · two scored tips

An early read, not a verdict

Maria has only two scored tips. Her page says 1 of 2 tips beat the S&P 500 and gives no percentage, because 50% from two tips would look like a finding.

The hourglass line says three more scored tips will give her a full score. Her follow totals still show, $2,000 to $1,754, with “a few tips can swing either way” right under them.

Maria from work, a person: 1 of 2 tips beat the S&P 500, with a half-filled bar and no percentage. Early read: 3 more scored tips for a full score. If you'd followed them: $2,000 to $1,754, against $1,926 in the S&P 500, $172 less than the S&P 500. 2 scored tips, pretend money. Early read: a few tips can swing either way. Milestones: 30 days, 0 of 2 beat. Maria from work, a person: 1 of 2 tips beat the S&P 500, with a half-filled bar and no percentage. Early read: 3 more scored tips for a full score. If you'd followed them: $2,000 to $1,754, against $1,926 in the S&P 500, $172 less than the S&P 500. 2 scored tips, pretend money. Early read: a few tips can swing either way. Milestones: 30 days, 0 of 2 beat.

Sources · Who beats the S&P 500?

Sources and strategies side by side

The S&P 500 sits on top as the line to beat, and matching it is a tie, not a win. Sources with five or more scored tips are ranked by hit rate, each with what following it would have turned $5,000 or $6,000 into.

Just Buy the Index, all SPY, reads “Ties the index by design” instead of a 0% hit rate that would make it look like the worst source. Early reads are listed below the ranking, unranked, so Maria isn’t placed last on two tips.

Who Beats the S&P 500? Filters: All, Sources, Strategies. The line to beat: the S&P 500. Matching it is a tie, not a win. Ranked: 1, Weekend Money Show, podcast, 6 tips, +16.5 points, 83%, 5 of 6 beat, $6,000 to $7,082 vs $6,092. 2, Uncle Ray, person, 5 tips, +10.4 points, 80%. 3, Buy the Dip, strategy, 5 tips, +4.2 points, 80%. Just Buy the Index, ties the index by design, Tie. Who Beats the S&P 500? Filters: All, Sources, Strategies. The line to beat: the S&P 500. Matching it is a tie, not a win. Ranked: 1, Weekend Money Show, podcast, 6 tips, +16.5 points, 83%, 5 of 6 beat, $6,000 to $7,082 vs $6,092. 2, Uncle Ray, person, 5 tips, +10.4 points, 80%. 3, Buy the Dip, strategy, 5 tips, +4.2 points, 80%. Just Buy the Index, ties the index by design, Tie.

Strategies

Testing an idea instead of a person

Ten well-known ideas, like Buy the Dip, Buy What You Use and Just Buy the Index, each with a short checklist. You check a stock against the rules yourself, then track it, and the strategy builds a record like any other source.

Track Record never checks the rules or looks at prices for you. Strategies inspired by a real investor say so, cite where the idea comes from, and state that the person isn’t involved.

Strategies, Start here: Buy the Dip, a big name drops 10% in a week, closes after 1 month. Buy What You Use, companies whose products you love, long term. Just Buy the Index, own the whole S&P 500, long term. Ride the Winner, trading near its 52-week high, closes after 3 months. Bargain Near the Low and Earnings Beat. Strategies, Start here: Buy the Dip, a big name drops 10% in a week, closes after 1 month. Buy What You Use, companies whose products you love, long term. Just Buy the Index, own the whole S&P 500, long term. Ride the Winner, trading near its 52-week high, closes after 3 months. Bargain Near the Low and Earnings Beat.

The first time AI is used

Asking before anything goes to an AI

The question comes the first time someone looks for tips with AI, never at launch. It names Anthropic, says exactly what’s sent and where, that it isn’t used for training and how long it’s kept, and that AI can be wrong.

Saying no still works. Apple Intelligence runs on iPhones that have it, podcast transcripts can be searched by hand, and typing always works. One switch in Settings changes the answer later.

Use Claude for AI? Track Record can use Claude by Anthropic to spot stock tips in text you share and to write short source summaries. What's sent: the text you share, with its page title and link, or a podcast episode's transcript. Where it goes: Track Record's server, then Anthropic. Not used for training. How long it's kept: Anthropic deletes it within 30 days, or up to 2 years if flagged for a safety review. You stay in charge. Buttons: Allow Claude, Don't Allow. Use Claude for AI? Track Record can use Claude by Anthropic to spot stock tips in text you share and to write short source summaries. What's sent: the text you share, with its page title and link, or a podcast episode's transcript. Where it goes: Track Record's server, then Anthropic. Not used for training. How long it's kept: Anthropic deletes it within 30 days, or up to 2 years if flagged for a safety review. You stay in charge. Buttons: Allow Claude, Don't Allow.

Results, never prices

The server fetches end-of-day prices, scores every tip and sends back dollars, points and Hit, Miss or Tie. Tests check that no price ever appears in what the app receives.

One engine, two places

The scoring math was written in Swift first, as the spec, then on the server, and both pass the same cases: weekends, holidays, splits, “going down” calls and the 4 p.m. close.

Everywhere it lives

Home and lock screen widgets, Watch complications, the Share sheet for pages and screenshots, Say a Tip by voice, and Siri. Siri opens the tip for review and saves nothing.

Checked for access

Every text color is tested for contrast on every surface in both themes. Rows restack at the largest text sizes, and Reduce Motion turns every animation into a cut.

What the AI does, word for word from Settings.

“It finds stock tips in text you share and puts a source’s score in plain words. It never scores tips, predicts prices, or says what to buy or sell.”

06 · Where the AI fits

Two jobs for the AI, and checks on both

AI does two things in Track Record: it finds tips in text, and it puts a score into plain words.

Neither job lets it near the math. Scores are arithmetic on real closing prices. The AI only reads text a person chose to share, or numbers the app already worked out.

Every reply is checked before anyone sees it. If a check fails, the app drops the suggestion or shows plain template wording instead, so a wrong answer never looks like a finding.

Finding tips

A suggestion is kept only if its quote appears word for word in the text and its ticker is in the market data. On the iPhone, the stock must also be named in the quote’s own sentence. Shared text is data, never instructions.

Summaries

Written from numbers only, with no names. A reply is replaced with a template if it gives advice, predicts anything, uses a number that isn’t in the facts, or puts a percentage on an early read.

On the iPhone

Apple Intelligence miscounted early reads in ways no check could catch, so it only summarizes records with five or more tips. Its guardrails refused structured replies about ordinary stock talk, so it writes plain lines the app reads.

Podcasts

Only the publisher’s own transcript is read, and it’s never stored. Times and speakers come from the transcript’s own time codes, not from the AI’s guess.

07 · What I decided against

Ideas I considered and left out

Each of these came up while I was designing Track Record. These are the reasons I left them out.

A chart of the pretend $1,000

It was built, then removed before 1.0. A data supplier’s terms list a single stock’s performance over time as needing a written agreement, and the numbers alone tell the same story.

Showing share prices

Market data terms limit what an app may display, and a share price adds nothing to the question of whether a tip beat the index. The app gets results only.

A public leaderboard

Ranking everyone’s uncles would mean collecting personal information and moderating what people post. Records are shared as an image through the Share sheet, with a friend’s name off by default.

Buy buttons and a brokerage link

The moment it can trade, it’s an investing app with a different set of rules. Track Record is for tracking and learning.

Saving AI finds automatically

One misread ticker would spoil a source’s record without anyone noticing. Every tip the AI finds waits for a person to check its quote.

A percentage from the first tip

One lucky call reads as 100%. Under five scored tips a source shows its count instead, and isn’t ranked.

A different amount for each tip

Sources would stop being comparable, because a big imagined stake would outweigh a small one. What if answers the same question without touching any score.

Checking a strategy’s rules for you

It would need daily prices on screen and would edge toward telling people what to buy. You check the rules yourself, with a simple checklist.

Red for a loss

A pretend result behind the index isn’t an error or an alarm. Behind is gray, and the sign and the word carry the meaning.

08 · Shipping it

From the first commit to App Review in seven days

168 commits and 19 builds, from October 31 to November 6, 2026.

What happened on each day from the first commit to the App Review submission
Day What happened Why it mattered
October 31 The scoring engine and its tests came first, then the price server and the first manual tip. Every screen depends on the math being right, so the math became the spec the server had to match.
November 1 Sources and scorecards, AI capture from Safari and podcasts, check-ins, the widget and the paywall. The whole loop worked end to end: hear a tip, capture it, confirm it, watch it score.
November 2 The name Track Record, the first TestFlight build and an independent check of the scoring math. A script with no shared code recomputed ten tips from raw prices, and all ten matched.
November 4 The Apple Watch app, iCloud sync and the first pass with Kinetic. A tip added on the iPhone showed up on the Watch from its own copy of the data.
November 5 A three-step Add Tip, two free color themes and a line-by-line read of the code against the App Store guidelines. Twelve serious problems were found and fixed before submitting.
November 6 Paid market data in production, a full flow and copy check, and build 19 submitted for App Review. 247 tests in the app and 222 on the server passed before the final build.

Track Record hasn’t been released, so there are no results from people using it yet.

09 · Reflection

What everything depends on

Whether people log a tip around the time they hear it.

A record is only as good as the tips in it. That’s why capture got the most work: the Share sheet, screenshots, voice, Siri and podcast transcripts all end in the same check.

More case studies

Three more about trust in a product that handles something that matters: an iPhone and Watch app for medicines, an agent that pays bills inside rules you set, and a supervisor who steps in before an AI agent acts.

Say When, helping older adults avoid missed and double doses
An iPhone and Apple Watch app for people who take several medicines a day. Setup reads each pharmacy label and turns its directions into reminder times. The app checks before a second dose, and one family member hears when the blood thinner is late.
Allowance, an agent that pays the bills inside rules you set
A business banking app, with a phone app for the owner and a desktop app for accounts payable. An AI agent pays a company's routine vendor bills, stops and asks when the bank details are new or the amount is far above the usual, and leaves a day to stop any payment before it goes.
Watchtower, supervising AI voice agents on calls
One person watches every AI voice agent on the line from one dashboard. When an agent tries something outside its limits, Watchtower pauses it and asks the supervisor to approve, edit, hold or take over.