Budgeter Privacy Policy

Version: v1 (effective 2026-05-15) Last updated: 2026-05-17

The source-of-truth Markdown for this page lives in the public repository at docs/legal/privacy-policy.md. Past versions are preserved in git history.


1. Who we are

Budgeter is an iOS-first personal-finance and budgeting application operated by Drew Scheidt as a solo founder, pre-revenue. We are based in the United States.

2. Plain-English summary

We help you understand and manage your money. To do that we connect to your bank or brokerage on your behalf (with your explicit consent), pull your balances and transactions, and use them to build budgets and a chat-based money coach. We do not sell your data, we do not share it with advertisers, and we never see or store your bank password — Plaid and SnapTrade hold those credentials, never us.

If you delete your account inside the app, we delete your data immediately — no soft-delete grace window, no recoverable archive.

3. Information we collect

We collect only what we need to run the service.

3.1 Identity and account information

3.2 Profile and preferences

What you tell us during onboarding or in settings:

When you connect a bank or brokerage:

We never see, store, or transmit your bank login password. Plaid’s End User Privacy Policy describes their data practices: https://plaid.com/legal/#end-user-privacy-policy.

3.4 Derived data

What Budgeter computes from the above:

3.5 Conversation history

If you use the chat coach:

3.6 Audio (if you use voice)

When you tap the voice button:

3.7 Notifications

3.8 Operational telemetry

We do not use third-party analytics SDKs (no Google Analytics, no Segment, no Mixpanel).

4. What we do not collect

We want to be explicit about this:

5. How we use your data

We use the data above to:

We do not:

6. Third-party processors

We share the minimum data necessary with these processors so they can perform a specific service for us. Each has its own privacy policy; we link below.

Processor Role Data shared Region
Plaid Bank-account linking + transactions Provider access token; we receive (not send) balances + transactions + account metadata. See https://plaid.com/legal/#end-user-privacy-policy. US
SnapTrade Brokerage linking Provider access token; we receive holdings + transactions. https://snaptrade.com/privacy US
Supabase Authentication + JWT Email, hashed password, optional MFA factor secret. https://supabase.com/privacy US
Neon Postgres database (production) Everything in §3 except raw audio. Encrypted at rest (AES-256). https://neon.tech/privacy-policy US
Anthropic Claude LLM for chat + categorization Your chat messages and a windowed transaction context. Anthropic’s API policy disables training on API data. https://www.anthropic.com/legal/privacy US
ElevenLabs Text-to-speech (assistant voice) The text response only — no user data. https://elevenlabs.io/privacy US
Deepgram Speech-to-text (voice input) Audio bytes for the duration of the request only — discarded after transcription. https://deepgram.com/privacy US
Expo Push iOS/Android push delivery Push token + notification payload (title + body). https://expo.dev/privacy US
Apple APNs iOS push transport (via Expo) Push token + notification payload. https://www.apple.com/legal/privacy/ Global
Fly.io API hosting + TLS termination All request/response traffic in transit; nothing persisted by Fly beyond runtime logs. https://fly.io/legal/privacy-policy/ US
Sentry Error monitoring Stack traces and error context. We do not send authorization headers, access tokens, or message bodies. https://sentry.io/privacy/ US
Upstash Redis BullMQ job queue Job payloads (notification scheduling, categorization). No raw financial data — references by user ID. https://upstash.com/trust/privacy US

6.1 Data residency

Where region selection is available, processors are configured to US regions. We do not currently store consumer financial data outside the United States.

6.2 Plaid

Plaid acts as a regulated financial-data aggregator. When you connect a bank via Plaid Link inside Budgeter, Plaid takes you through their own consent flow first; Plaid’s End User Privacy Policy describes what they collect and how they use it. We use Plaid’s transactions, accounts, and auth products.

6.3 Anthropic and LLM data handling

We send your chat messages and a windowed slice of your transaction history (only what’s needed to answer the question) to Anthropic’s Claude API. Anthropic’s API terms state that API data is not used to train models and is retained only for the duration needed to deliver the response and run their abuse-monitoring. We do not enable Anthropic’s optional training opt-in.

7. Your rights

You can exercise any of these directly inside the app. If something isn’t working, email security@trystackapp.com and we will help.

8. Data retention

Data Retention
Authentication identity (email, hashed password) Lifetime of account; immediately removed on user-initiated deletion
Provider access tokens Lifetime of the connected account; immediately removed on account deletion
Financial transactions Rolling 24 months from posting date
Account snapshots (balances, masks) Lifetime of the connected account
Chat history Rolling 12 months
Budgets and goals Lifetime of account
Notifications 12 months
Audit log entries 24 months (survives user deletion as a user_id = null tombstone — no PII)
Server request logs Fly.io retention (currently 30 days)
Error telemetry Sentry retention (currently 90 days)

9. Children

Budgeter is intended for users 18 and older. We do not knowingly collect data from children under 13 (US COPPA) or, where applicable, minors under 18. If you believe a minor has signed up, email security@trystackapp.com and we will delete the account.

10. Security

Full security evidence (TLS, at-rest, vulnerability management, incident response) is published in the public repository under docs/security/.

11. International data transfers

Our processors operate in the United States. Users accessing Budgeter from outside the US should be aware that their data is processed in the US. We do not currently serve users in jurisdictions whose laws prohibit such transfers (EEA / UK / certain other regions); this policy will be amended before we begin to.

12. Changes to this policy

When we change this policy in a way that materially affects how we collect, use, or share your data, we will:

  1. Increment the Version header at the top of this document.
  2. Increment PRIVACY_POLICY_VERSION in apps/mobile/src/consent/PlaidConsentScreen.tsx. The next time you open Budgeter and reach the Plaid consent gate, the mobile client will detect the new version and prompt you to re-consent.
  3. Post the new version to https://privacy.trystackapp.com/ immediately.

Non-material changes (typos, clarifications, broken links) are made in place without a version bump and are reflected by the Last updated date at the top.

Past versions are preserved in this repository’s git history at the path docs/legal/privacy-policy.md.

13. Contact

Acknowledgement within 3 business days. Substantive response within 30 days.