BudgetSignal

Privacy policy

BudgetSignal keeps your financial records on your device. This page explains the limited cases where information is handled by Apple or sent to our feedback and optional product analytics services.

Effective: October 11, 2026 Updated: October 20, 2026

Who is responsible

BudgetSignal is developed by Francisco Cantero. The designated privacy contact is budgetsignal@gmail.com.

Financial data stored on your device

The app stores the records you create, such as accounts, transactions, categories, budgets, goals, merchant rules, recurring schedules, cash-flow scenarios, preferences, and import history. The app uses Apple’s SwiftData local store. It does not require a BudgetSignal account, and the app does not upload your ledger to the feedback service.

CSV import uses files you choose. Import staging and the resulting records are stored locally. When you export CSV, the app creates a file for you to save or share using Apple’s file and share controls. The app does not send an export automatically.

More → Data → Delete financial data removes transactions, budgets, goals and contributions, merchant rules, recurring schedules, automation history, capture drafts, and saved CSV import history. Accounts, categories, and preferences remain. This action does not delete feedback already submitted to the feedback service or change Apple’s App Store records.

Optional product analytics

BudgetSignal offers optional product analytics to understand how app flows work. Only after you choose Allow, the app sends PostHog a random identifier for this installation and limited usage events, such as startup and welcome steps, transaction form and save outcomes, confirmation that a manual transaction was created, and Pro screens and purchase outcomes. Events may include the app version, build, environment, and event-schema version.

Analytics events do not include financial amounts, names, account or transaction identifiers, transaction details, notes, receipt images or text, or imported content. Financial records remain on your device. Analytics is separate from account, advertising, and cross-company tracking; automatic capture and session replay are disabled.

Until you accept, the analytics SDK is not initialized, no analytics identifier is created, no analytics request is sent, and no event is queued or backfilled. Declining leaves the app fully usable. You can change your choice in Settings. Turning analytics off stops new captures and requests, clears queued analytics events, and resets the installation identifier. A request already in progress may finish. Turning analytics on again requires a new choice and a new random identifier.

Optional on-device text processing

For some text proposals and wording refinements, BudgetSignal may call Apple’s on-device Foundation Models when that system model is available. The app constructs a short prompt for the request and does not store the prompt or a conversation history. These requests are not sent to BudgetSignal’s feedback service. The feature is best-effort and falls back when the model is unavailable.

Feedback you choose to submit

If you submit feedback, the app sends the title and description you provide to the BudgetSignal feedback service over HTTPS. You may also choose to review and attach a screenshot. A screenshot can contain financial information, so check it before sending. No ledger records or screenshots are attached automatically.

The feedback service is hosted by Cloudflare. It stores feedback text in a database in the EU and optional screenshots in a private EU object store. Screenshots expire and are scheduled for deletion 90 days after upload. Feedback text and developer replies have no fixed deletion period in the current service; the developer can remove their content. The service keeps a minimal hashed submission receipt after content deletion to prevent deleted submissions from being recreated by a retry.

The service does not ask for your name or email. A random access capability is kept in the device Keychain; the service stores its hash to let the app retrieve only that device’s submissions. There is no account recovery between devices. Feedback content is visible to the developer for review and response. The app currently has no self-service control to delete feedback text.

Subscriptions and Apple services

If you buy BudgetSignal Pro, Apple processes the payment and manages the subscription through the App Store. BudgetSignal uses StoreKit’s verified subscription status to enable Pro features. The app does not receive your payment-card details. Apple’s handling of App Store purchase and account information is governed by Apple’s own terms and privacy policy.

Apple’s Standard Licensed Application End User License Agreement

Shortcuts and notifications

When you use a BudgetSignal Shortcut or system action, it reads or writes only the information needed for that action in the local app store. Optional budget alerts and import notices are local notifications managed by iOS. You can change notification permission in iOS Settings.

If you enable the app’s privacy lock, iOS handles Face ID, Touch ID, or device-passcode authentication. BudgetSignal receives only the authentication result; biometric data and credentials do not leave the device through this feature.

Sharing and security

Financial records are not sent to our feedback service. We do not sell your information. Apple handles App Store purchases. Optional text processing uses Apple’s on-device model API. The app sends feedback content to Cloudflare only when you choose to submit it. This website is also hosted by Cloudflare, as described below. The feedback service uses HTTPS, access controls, private object storage, and is configured without request-body logging.

This website

This policy page is hosted by Cloudflare. Visiting the page sends a normal web request to Cloudflare, separate from any feedback you submit in the app. We do not add analytics, advertising trackers, or third-party fonts to this policy page. This is separate from the optional, consented product analytics inside BudgetSignal.

Contact and privacy requests

Developer: Francisco Cantero

Privacy contact: budgetsignal@gmail.com.

Use this address to ask about feedback-content deletion or other privacy requests.