Uncached System Prompt In Chat Streaming
High confidenceapp/(chat)/api/chat/route.ts:232~$540.00/mo saved at 1k usersThis is a real PrePrice audit of a sample AI app. Here's exactly what you get for yours — verdict, cost per run, top drivers with fixes, and risk scenarios.
Scan your repo →a3f291…6f8We compare your cost to your stated price. The cost figure includes every paid service in your stack: hosting, database, auth, monitoring, email, search, payments, and (if present) any AI, LLM, embedding, vector database, or voice spend. We total it at the audience size you have selected on the slider.
The "worst case" figure is the P95: the top 10 percent of users (the heaviest ones) cost at least this much. Heavy users dominate margin on freemium and chat apps especially, so we always show both.
We look at the right unit for the app. Chat and freemium apps get judged per user per month. Agentic apps that run a clear job (research agent, code generator, video render) get judged per run, because that is how they get billed.
Total = AI bill + infra at current scale ($0 across 5 services). Worst-case AI: $189 / mo · Annual run-rate: $454.
Drag the cost projection slider above to watch each service cross tier boundaries. Verified services use multi-dimensional pricing. Others fall back to Sonnet's best estimate.
app/(chat)/api/chat/route.ts:232~$540.00/mo saved at 1k usersapp/(chat)/api/chat/route.ts:237~$162.00/mo saved at 1k userslib/ai/tools/request-suggestions.ts:45~$27.00/mo saved at 1k userslib/ai/models.ts:26~$0/mo saved at 1k usersgit clone --depth 1, into ephemeral worker tmpdir
Secrets purged · 47 files / 1.2 MB kept for analysis
audit_report.json written to scans table (no source code)
shutil.rmtree(workdir) in finally block · 0 files remaining
| Source | github.com/preprice/sample @ HEAD a3f291c |
| SHA-256 | a3f291c5e8b2d4f7a1c9e6b8d3f5a2e7c1b4d6f8 |
| File count | 47 files analyzed |
| Byte count | 1.2 MB (after secrets purge, before chunking) |
| Storage region | us-east-1 |
Verify yourself
Run this against your local copy and confirm the value matches our SHA-256 above:
git rev-parse HEADKept (in our database)
| audit_report.json | Findings, costs, fix prompts. No source code. No code snippets. |
Wiped from our infrastructure
| Repository contents | 47 files / 1.2 MB. Worker tmpdir rmtree'd in finally block at 2026-05-11 00:02 UTC. |
| Env / credential files | .env, .env.local, .env.production, credentials.json, secrets.yml, service-account.json, firebase-adminsdk.json — all purged BEFORE analysis ran. |
| Private keys + auth tokens | id_rsa, id_ed25519, all SSH keys, .npmrc, .yarnrc — purged BEFORE analysis ran. Stack inferred from package.json, imports, and hosting config. |
| Per-driver code snippets | Stripped from audit_report before persistence (server.py:443-446). The file:line reference survives so the report can render a 'See the code' placeholder; the literal snippet does not. |
This scan never wrote source code to our database. Enforced by RLS policy scans_select_own on table scans (migration 007).
What that means: even an authenticated user with a stolen anon JWT can only read their own scans rows. There is no row in any table that contains your source. Code snippets that the synth step might have embedded are stripped before persistence (server.py:443-446) so the JSON we keep is structurally incapable of holding your code.
| Scan ID | sample |
| Report generated | 2026-05-11 |
| Used to train AI? | Never. Anthropic (our AI provider) operates under a zero data retention and no-training contract for API customers. |
| What we logged | File paths and line numbers only. Never the code itself. |
| Who can see this report | Only you, when signed in. PrePrice staff do not review your scan unless you email support with the scan ID and ask us to. |
| Verifiable cost numbers | Every dollar figure in this report links back to the vendor's public pricing page (Anthropic, Vercel, Stripe, and so on). Check our math. |
| Download receipt | |
| Delete everything | Delete my account and every scan I've run → |
Want this for your own app? It takes a couple of minutes.
Scan your repo →