RankDude

Test log

Bolt.new test data

Raw results for the Bolt.new review. The verdict is in the review.

Tested
25 October 2026
Tester
Miles Foster
Account
Bought for this review at the public price
Tests
8
Screenshots
7
Environment
Google Chrome on desktop

Results

IDTestKey measurementScore
T01Prompt to Working AppBrief to first version: about 12 min, 1 prompt4/5
T02Spec AccuracyFinal app: 23 of 244/5
T03Sign-in & Access ControlAttacks blocked: 1 of 23/5
T04Database & AdminData checks passed: 6 of 65/5
T05Iteration & Credit BurnFinished in one message: 12 of 125/5
T06Publish, Speed & MobileFirst publish: under 2 min3/5
T07Export & OwnershipFiles in the download: 664/5
T08Pricing & Cost to FinishTokens used: 5.5 million of 10 million4/5
Overall (in the review)4/5
T01

Prompt to Working App

4/5Tested
Method
The Fitting Room brief was pasted word for word (1,689 characters) and submitted at 22:30 UTC on 25 October 2026.
Brief to first version
about 12 min, 1 prompt
Fix prompts
5, plus 1 test-only
Tokens, build and fixes
about 2.1 million
Questions asked
2 design questions (skipped)
Remark
Live and passing in 1 hour 25 minutes with 6 prompts: under 90 minutes and 15 prompts or fewer is 4/5.

Bolt.new: The first draft in Bolt.new's editor: the chat on the left with the build summary and the missing-secrets warning, the finished home page on the right.

Bolt.new: The first draft in Bolt.new's editor: the chat on the left with the build summary and the missing-secrets warning, the finished home page on the right.
T01-1 Bolt.new's editor after the first build.
Raw notes

The Fitting Room brief was pasted word for word (1,689 characters) and submitted at 22:30 UTC on 25 October 2026. The clock stops when the app is live and 20 of the 24 checks pass, which is the published 25 of 30 in proportion once the six payment and email checks are left out. Every prompt and its tokens are in the ledger.

Bolt.new asked two design questions (look and logo), which I skipped. Version 1 was saved at 22:43 UTC, about 12 minutes after the submit, using about 1.3 million tokens. I published from the chat in under 2 minutes.

The first version was broken. The landing links pointed at /login and /signup/member, which are not routes, so sign-in sent visitors back home (fix F1, about 0.1 million tokens). The admin Instructors page crashed with React error 301 (F2). Booking could never work because the database function used a SQL lock that Postgres rejects with an aggregate (F4). The admin All bookings page and CSV were empty and the member counters and coach roster were wrong (F5). F3 was a test-only prompt that gave every member 5 credits.

After F5 at 23:55 UTC (1 hour 25 minutes after the submit, six prompts of which one was test-only) 23 of the 24 checks passed. The one that cannot pass is the password reset link.

  • The first publish took under 2 minutes and the version 1 clock reads 22:43 UTC against a 22:30 submit.
T02

Spec Accuracy

4/5Tested
Method
The 24 checks that need no keys of my own were run against the live app, by hand and by script, with a screenshot per check.
Final app
23 of 24
Seed facts correct
10 of 10
Invented items
3
Remark
23 of 24 is 96%, the top band, but the top band needs nothing invented and three things were: 4/5.

Bolt.new: The member timetable of the Fitting Room app: five class cards with coach, time, length and places left.

Bolt.new: The member timetable of the Fitting Room app: five class cards with coach, time, length and places left.
T02-1 The member timetable.
Raw notes

The 24 checks that need no keys of my own were run against the live app, by hand and by script, with a screenshot per check. The six payment and email checks (C24 to C29) are left out because they need your own Stripe and email keys. The inbox check was read by hand. I also counted anything the brief never asked for.

The final app passed 23 of 24. The one that failed is C03: the password reset link goes to localhost.

All ten seed facts were correct. Inventions: a "Most popular" tag on the pass, "Monday through Saturday timetable" wording and stock photos from Pexels.

The timetable shows a weekly pattern with day tabs, not dated classes.

  • Counts before the five fix prompts were not recorded as a total.
T03

Sign-in & Access Control

3/5Tested
Method
Sign-up, log-in, log-out and password reset for a member, a coach and an admin, then two attacks on the live app with the wrong session.
Attacks blocked
1 of 2
Password reset
email arrives, link broken
Remark
Flows work, but one attack succeeds: 3/5.

Bolt.new: the password reset email from the test app, with a Reset password link.

Bolt.new: the password reset email from the test app, with a Reset password link.
T03-1 The reset email arrived within seconds. Its Reset password link sends you back to http://localhost:3000, an address that only exists on a developer's own computer.
Raw notes

Sign-up, log-in, log-out and password reset for a member, a coach and an admin, then two attacks on the live app with the wrong session. Requests and responses are saved as transcripts.

Sign-up worked for two members, the admin (with the single-use first-admin code Bolt.new printed in the chat) and the coach (with an invite code made by the admin). A session survived a reload. The reset email, from Supabase Auth, arrived in 11 seconds, but its link goes to localhost, so no new password can be set on the published site (the SITE_ORIGIN secret was never set).

Attack 1 was blocked. Member A reading the bookings, profiles, credits and orders tables through the app's own API got only A's own rows; B's profile by email returned an empty list; the admin tables (messages, invite codes, email log) returned empty lists.

Attack 2 partly succeeded. A member's class edit and delete returned 200 with no rows changed, so they were blocked. But PATCH profiles with {role: admin} on the member's own row returned 200 and the role became admin. I restored it afterwards.

  • Bolt.new's security audit (in the Publish dialog) was not run.
T04

Database & Admin

5/5Tested
Method
Six checks: the form and bookings write real records; they survive a reload, a republish and a design change; in Bolt.new's own data panel I viewed rows, filtered, added a row, deleted it, and exported as CSV and JSON.
Data checks passed
6 of 6
Tables listed at the end
10
Remark
Six of six checks pass, with nothing lost after the changes: 5/5.

Bolt.new: Bolt.new's database panel listing ten tables with row counts, including bookings with 7 rows and classes with 5 rows.

Bolt.new: Bolt.new's database panel listing ten tables with row counts, including bookings with 7 rows and classes with 5 rows.
T04-1 The database panel at the end of the test.
Raw notes

Six checks: the form and bookings write real records; they survive a reload, a republish and a design change; in Bolt.new's own data panel I viewed rows, filtered, added a row, deleted it, and exported as CSV and JSON.

All six passed. The contact form and bookings wrote records. In the panel the classes table showed its 5 rows, the filter worked, an added row saved, and deleting it brought the count back to 5. Export as CSV downloaded with every column and Export as JSON was offered. After the twelve changes all five classes were still there, with the Power Reformer capacity of 4 from change 5.

  • Record and storage limits were not read.
T05

Iteration & Credit Burn

5/5Tested
Method
The twelve scripted changes, one at a time, each one message.
Finished in one message
12 of 12
Regressions found
0
Tokens for the twelve
about 3.4 million
Remark
11 or 12 first try with no regression found is 5/5. The check after each change was short, not the full 30.

The twelve changes

  • 1

    Change
    Phone field on sign-up
    Tokens
    0.3M
    Minutes
    2
  • 2

    Change
    Rename instructor to coach
    Tokens
    0.4M
    Minutes
    6.5
  • 3

    Change
    Dark green and cream colours
    Tokens
    0.1M
    Minutes
    1.5
  • 4

    Change
    An About page
    Tokens
    0.2M
    Minutes
    1.5
  • 5

    Change
    Power Reformer capacity 4 (data edit)
    Tokens
    0
    Minutes
    2
  • 6

    Change
    Coach filter on the timetable
    Tokens
    0.1M
    Minutes
    1.3
  • 7

    Change
    Planted bug, then fix
    Tokens
    0.2M, then 0.1M
    Minutes
    1.5 + 1.5
  • 8

    Change
    Second email when the admin cancels (not checkable)
    Tokens
    0.4M
    Minutes
    2.3
  • 9

    Change
    Phone layout, one class per row
    Tokens
    0.3M
    Minutes
    1.8
  • 10

    Change
    Bookings export for the admin only
    Tokens
    0.1M
    Minutes
    1.8
  • 11

    Change
    Waiting list with position
    Tokens
    0.3M
    Minutes
    3.3
  • 12

    Change
    Dark mode toggle
    Tokens
    0.9M
    Minutes
    4.5

Bolt.new: Bolt.new's editor after the dark mode change: the finished build plan ticked off in the chat and the app preview beside it.

Bolt.new: Bolt.new's editor after the dark mode change: the finished build plan ticked off in the chat and the app preview beside it.
T05-1 The dark mode change.
Raw notes

The twelve scripted changes, one at a time, each one message. After each change I published with Update and ran a short check of the member, admin and coach screens. The tokens and minutes are in the ledger.

All twelve finished in one message each and the short check passed after every one. Change 5 (Power Reformer capacity 4) was only a data edit and saved no new version. Change 8 (a second email when the admin cancels) could not be checked, because the app sends no emails without keys of my own. Change 7 planted a bug and the next message fixed it.

The twelve used about 3.4 million tokens. Dark mode used the most, about 0.9 million.

  • A full re-run of the 30 checks after every change was not done.
T06

Publish, Speed & Mobile

3/5Tested
Method
Publish from the chat, then update after each change; Lighthouse mobile three times on the home page.
First publish
under 2 min
Median mobile score (3 runs, home page)
78
Own domain
not tested
Remark
No custom domain was connected, so this is the vendor-address row: 3/5. The speed alone (78) would be 4.

Bolt.new: Bolt.new's Publish dialog: the public address, Run security audit, Custom domain and the Update button.

Bolt.new: Bolt.new's Publish dialog: the public address, Run security audit, Custom domain and the Update button.
T06-1 The Publish dialog.
Raw notes

Publish from the chat, then update after each change; Lighthouse mobile three times on the home page.

The first publish finished in under 2 minutes at fitting-room-pilates-4xkg.bolt.host, with no extra cost. Each later change needed the Update button; one update took 241 seconds.

Lighthouse mobile (version 13.5.0): 79, 78 and 77, median 78; largest paint 4.1 to 4.7 seconds, layout shift 0, blocking time 0 ms, about 511 KB in 11 requests.

The Publish dialog offers a custom domain and a security audit. I did not use either.

  • Only the home page was measured; layout faults, a real phone and add to home screen were not.
T07

Export & Ownership

4/5Tested
Method
Project menu, Download; unpack in a clean folder, install the dependencies, build, and read the code for anything that only works on Bolt.new.
Files in the download
66
Build on my computer
clean, 3 s
Bolt-specific code found
none
Remark
Runs after small rework, because it needs its own Supabase project: 4/5.
Raw notes

Project menu, Download; unpack in a clean folder, install the dependencies, build, and read the code for anything that only works on Bolt.new.

The Download item gave a zip of 66 files (754 KB) on the second try; the first attempt showed no file. It holds a Vite and React project with react-router, a supabase folder with the database migrations and three edge functions (checkout, booking emails and the payment webhook), and a .env file with two Supabase values.

A search of src and supabase found no Bolt-specific package or reference. npm install and npm run build ran clean on my computer, building in 3 seconds. To run it elsewhere you need your own Supabase project, the migrations applied, the three functions deployed and the two values set. I did not read Bolt.new's terms.

  • Not run end to end against my own Supabase project; the terms were not read.
T08

Pricing & Cost to Finish

4/5Tested
Method
Prices were read on bolt.new/pricing on 26 October 2026.
Tokens used
5.5 million of 10 million
At the plan rate
about $13.75
Remark
Finished within the entry paid plan with the allowance clear, but no cap was shown and running costs are unknown: 4/5.

What it cost to finish the test app

  • First build, tokens

    Tokens
    1.3M
    At $25 per 10M
    $3.25
  • Five fix messages used

    Tokens
    0.8M
    At $25 per 10M
    $2.00
  • Twelve changes

    Tokens
    3.4M
    At $25 per 10M
    $8.50
  • Everything

    Tokens
    5.5M of 10M
    At $25 per 10M
    $13.75

Bolt.new: Bolt.new's pricing page, monthly billing: Pro at $25, Teams at $30 per member and Enterprise as a custom contract.

Bolt.new: Bolt.new's pricing page, monthly billing: Pro at $25, Teams at $30 per member and Enterprise as a custom contract.
T08-1 Bolt.new's pricing page.
Raw notes

Prices were read on bolt.new/pricing on 26 October 2026. The token ledger priced the whole test at the plan's rate: 10 million tokens for $25 a month.

The whole test used 5.5 million of the 10 million monthly tokens (the build 1.3, five fixes 0.8, twelve changes 3.4). At $25 per 10 million that is about $13.75, and the first working version about $5.25.

Unused tokens roll over one month and then expire (the meter said 25 December 2026). What happens at the limit was not tested. The next plan is $50 a month for 26 million tokens.

Stripe and email fees are separate and were not measured.

  • Limit behaviour and the free plan's limits were not read.

Coverage

Tested

  • One brief built, published and checked with 24 written checks
  • Two scripted attacks on the live app
  • Twelve changes with a short check after each
  • Six data checks in Bolt.new's own database panel
  • Project download, install and build on my own computer
  • Publishing and three Lighthouse runs on the home page
  • Plans, the tokens used and the cancellation

Not tested or limited

  • Payments and emails were not tried because they need your own keys (Stripe and an email service); the six payment and email checks are left out and the grade counts 24 checks
  • For testing only, one prompt gave every member 5 free credits
  • The downloaded project was installed and built, but not run end to end against my own Supabase project
  • Support is not graded: the same question was emailed to support@bolt.new on 26 October 2026 and Bolt's reply is awaited
  • Bolt.new's security audit, own domain, layout faults at three widths, a real phone and the log-in and timetable pages in the speed runs were not tested

Still to test

  • Payments and emails with your own Stripe and email keys
  • Support, once Bolt replies to the email of 26 October 2026
  • The downloaded project run end to end against my own Supabase
  • Own domain and a real phone
What these results meanRead the full Bolt.new review