-
-
A letter offering "$28,000 in aid": only $14,800 is a discount, $10,500 is debt, and the family still pays $54,400 this year.
-
Three offers side by side. The fullest-looking pond belongs to the letter that quietly leaves out housing, food and books.
-
Every line shows how it was read: a rule, the model by name, or you. Correct any row and all figures recompute.
The letter is allowed to call a loan "aid"
A financial-aid award letter can add grants, loans and work-study into one headline number. A family reads "$28,000 in aid" and says yes. Only $14,800 of it was a discount. The rest is a bill that arrives later, with interest — and bachelor's-degree borrowers leave with $29,560 on average (College Board, Trends in Student Aid 2025).
There is no standard format for these letters. Colleges are not required to separate gifts from debt, and many don't.
What Pondside does
Paste your letter. Pondside reads it line by line and tells you:
- What is genuinely a discount (grants, scholarships) versus what is debt (subsidised, unsubsidised, PLUS) versus what is a job (work-study is a paycheque you have to earn, not a credit against your bill).
- What you actually pay per year, with the arithmetic shown: cost of attendance − gift aid = net price, less self-help aid.
- Four years, not one — principal borrowed, interest that accrues while you're still enrolled (unsubsidised and PLUS loans do; subsidised don't), the balance at repayment, and what that becomes as a monthly payment.
- Letters side by side, so three offers can be compared honestly rather than by headline size.
The capybara's pond is the chart. Water level is how much of the cost grants actually cover. Cloudiness is borrowing. The dashed line is the full cost of attendance, and the gap between the water and that line is what your family still has to find.
How it's built
- The maths is never done by a language model. Every figure is computed in TypeScript, covered by 42 passing unit tests. Rates are primary-sourced: 6.52% undergraduate Direct and 9.07% PLUS for 2026-27 disbursements.
- Rules first, model only for the gaps. A rules engine recognises the standard aid vocabulary at full confidence. Only unfamiliar line items go to a model, and every row shows how it was read —
rule, the model by name, oryou, if you corrected it. - Anything it can't classify stays out of every total. Guessing that an unknown line is a cost would silently turn a scholarship into a bill, so unresolved rows are shown and excluded rather than assumed.
- You can correct any row inline and every downstream figure recomputes. The tool is a reading aid, not an oracle.
Accessibility
Designed for families reading a confusing document under stress, including people using screen readers and people whose parents don't read English:
- Contrast measured at 15.25:1 and 10.93:1 (AA requires 4.5:1)
- Full keyboard navigation with visible focus on all 12 tab stops, landmarks and a skip link
aria-liveannouncements when results change, captioned data table, labelled SVG- A plain-language toggle, and
prefers-reduced-motionhonoured
Honest limitations
- Sample letters are fictional; the formats are modelled on real ones.
- Projections assume this year's award repeats for four years, standard 10-year repayment after a six-month grace period.
- It reads pasted text; photo and PDF letters are next.
- It does not tell anyone which college to choose. It makes the offer legible.
Tracks
Best Finance Hack — the whole tool is one financial decision made clearer. Best Education, Accessibility, or Social Impact — built for first-generation and lower-income students, who receive these letters with the least support in reading them.
Built solo in the hacking window by Nelson Lai, City College of San Francisco. AI coding assistance disclosed; all project code written during the event.
Built With
- elevenlabs
- next.js
- openai-compatible-api
- playwright
- qwen
- react
- svg
- tailwindcss
- typescript
- vercel