Test log
Base44 test data
Raw results for the Base44 review. The verdict is in the review.
- Tested
- 25 October 2026
- Tester
- Miles Foster
- Account
- Bought for this review at the public price
- Tests
- 10
- Screenshots
- 8
- Method
- Published methodology
- Environment
- Google Chrome on desktop, plus phone-width screens
Results
| ID | Test | Key measurement | Score |
|---|---|---|---|
| T01 | Prompt to Working App | Brief to live, 25 of 30 passing: 10 min 20 s, 1 prompt | 5/5 |
| T02 | Spec Accuracy | Final app: 30 of 30 | 4/5 |
| T03 | Sign-in & Access Control | Flows working: all | 5/5 |
| T04 | Database & Admin | Checks passed: 6 of 6 | 5/5 |
| T05 | Payments & Email Actions | Checks passed: 4 of 4 | 5/5 |
| T06 | Iteration & Credit Burn | First try: 11 of 12 | 5/5 |
| T07 | Publish, Speed & Mobile | Live on the test domain: about 12 min | 3/5 |
| T08 | Export & Ownership | Code export on Starter: none (Builder and up) | 1/5 |
| T09 | Support & Cancellation | First answer: under 1 min (AI assistant) | 5/5 |
| T10 | Pricing & Cost to Finish | Everything, message credits: 47.62 of 100 | 4/5 |
| Overall (in the review) | 4.5/5 | ||
Prompt to Working App
5/5Tested- Method
- The Fitting Room brief was pasted word for word (1,689 characters) at 08:15:38 UTC.
- Brief to live, 25 of 30 passing
- 10 min 20 s, 1 prompt
- 30 of 30 passing
- 1 h 06 min, 2 prompts
- Credits, first draft
- 6.73
- Questions asked
- 1 (approve the Stripe install)
- Remark
- Under 30 minutes and 5 prompts or fewer is 5/5. The 25-of-30 moment is the one the scale counts; the 30-of-30 moment alone would be 4.
Raw notes
The Fitting Room brief was pasted word for word (1,689 characters) at 08:15:38 UTC. The clock stopped when the app was live and 25 of the 30 checks passed. Every prompt and its credits are in the ledger.
Base44 asked one thing: to approve a Stripe install, at 08:17:01, which I did from the brief. The build went idle at 08:23:44 with "Stopped before finishing: the live preview isn't picking up the new screens, write continue". A free page reload at 08:24:34 showed the finished app, so no prompt was spent. I published at about 08:25:5x, about 10 minutes 20 seconds after submitting.
25 of the 30 checks were true on that first live version; the first draft used 6.73 credits. The coach role was not applied (four checks) and one line of copy was wrong.
Prompt 2 told Base44 about the coach role and the Team tab (3.81 credits, 310 seconds). It published at 09:07; I set the two coach accounts' roles by hand in the app's own Team tab at 09:13, and 30 of 30 passed at 09:21:37: 1 hour 6 minutes and 2 prompts in all.
- The preview stalled once and needed a reload; that is counted in the 10 minutes 20 seconds.
Spec Accuracy
4/5Tested- Method
- The 30 checks were run against the live app, by hand and by script, with a screenshot per check.
- Final app
- 30 of 30
- First draft
- 25 of 30
- Invented rules or copy
- 1 rule and 4 lines
- Remark
- 28 to 30 passing with nothing invented is 5/5. I count the "no expiry" pass rule as invented, so 4/5.
The 30 checks, grouped
| What | First draft | Final app |
|---|---|---|
| Sign-up, log-in, password reset | 3 of 3 | 3 of 3 |
| Coach and admin screens | Failed | Passed |
| Timetable details | 2 of 2 | 2 of 2 |
| Booking, cancelling, credits, privacy | 6 of 6 | 6 of 6 |
| Coach view and attendance | Failed | 3 of 3 |
| Admin adds, edits, deletes classes | 3 of 3 | 3 of 3 |
| Admin bookings and export | 3 of 3 | 3 of 3 |
| Contact form | 2 of 2 | 2 of 2 |
| Stripe payment and declined card | 4 of 4 | 4 of 4 |
| Booking emails | 2 of 2 | 2 of 2 |
| Seed facts, nothing invented | Failed ("six sessions a week") | Passed |
| All 30 checks | 25 of 30 | 30 of 30 |
Sign-up, log-in, password reset
- First draft
- 3 of 3
- Final app
- 3 of 3
Coach and admin screens
- First draft
- Failed
- Final app
- Passed
Timetable details
- First draft
- 2 of 2
- Final app
- 2 of 2
Booking, cancelling, credits, privacy
- First draft
- 6 of 6
- Final app
- 6 of 6
Coach view and attendance
- First draft
- Failed
- Final app
- 3 of 3
Admin adds, edits, deletes classes
- First draft
- 3 of 3
- Final app
- 3 of 3
Admin bookings and export
- First draft
- 3 of 3
- Final app
- 3 of 3
Contact form
- First draft
- 2 of 2
- Final app
- 2 of 2
Stripe payment and declined card
- First draft
- 4 of 4
- Final app
- 4 of 4
Booking emails
- First draft
- 2 of 2
- Final app
- 2 of 2
Seed facts, nothing invented
- First draft
- Failed ("six sessions a week")
- Final app
- Passed
All 30 checks
- First draft
- 25 of 30
- Final app
- 30 of 30
Raw notes
The 30 checks were run against the live app, by hand and by script, with a screenshot per check. The inbox and Stripe checks (C03, C26 to C29) were read by hand. I also counted anything the brief never asked for.
The final app passed 30 of 30, and again after all twelve changes. The first draft passed 25 of 30: C04, C13, C14 and C15 (the coach role) and C30 (a line saying "six sessions a week" when the timetable has five).
Unrequested copy is still live: the pricing line "One credit per class, no expiry" (a pass rule the brief never set), three class taglines ("Foundations on the reformer", "Mat work, breath and flow", "A strong, faster reformer session") and "or drop by the studio and say hello" on the About page. No extra classes, prices, coaches or reviews were added.
Base44 also kept leftover bookings of deleted classes in the data.
- Five of my first measurement's failures were my own script's selector bugs; they passed once fixed, with the app unchanged.
Sign-in & Access Control
5/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: member A reading member B's bookings, and a member calling admin-only actions.
- Flows working
- all
- Attacks blocked
- 2 of 2
- Security panel
- 8 issues, none about access
- Remark
- All flows work and both attacks are blocked: 5/5. The one weak spot, an invited coach who stayed a member, was found by my checks and fixed by one prompt (see Prompt to Working App).
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: member A reading member B's bookings, and a member calling admin-only actions. Requests and responses are saved as transcripts.
Every flow worked. New accounts need an emailed code (member A got in once before verifying; the other four were refused until the code was typed). The password reset link was requested at 08:49:10, was in the inbox the same minute, and the new password worked. Admins and coaches come in by emailed invite or the Team tab.
Attack 1 was blocked. Member A's own list held only A's rows; filtering by B's email returned nothing, B's booking id returned 404, editing it returned 403, and the cancel function with B's booking id returned 400. Orders and messages also showed only A's own rows, and anonymous calls returned empty arrays.
Attack 2 was blocked. Changing a class returned 403 and deleting one returned 404 (an admin confirmed it still existed). The team-role function answered 403 with "Only a studio admin can manage the studio team", and anonymous calls to the six protected functions returned 401 or 403. The capacity rule is enforced on the server (409 "This class is full").
Base44's own security panel listed 8 issues, none about access: zod (1 known vulnerability, High), vite (6, High) and backend functions that "can be called by anyone" (Low, 5 at first, 8 after the changes). Probing those functions anonymously showed each one checks the caller itself.
- "Code vulnerability scanning" needs the Builder plan and was not run.
Database & Admin
5/5Tested- Method
- Six checks: the form and bookings write real records; they survive a reload, a republish and a design change; the admin can view, filter, edit and delete in Base44's own data panel; records export as a file.
- Checks passed
- 6 of 6
- Republishes, nothing lost
- 7
- Remark
- Six of six is 5/5.
Raw notes
Six checks: the form and bookings write real records; they survive a reload, a republish and a design change; the admin can view, filter, edit and delete in Base44's own data panel; records export as a file. Row counts were taken before and after.
Six of six passed. The form and bookings wrote to the ContactMessage, Booking and Order tables. The app was published 7 times with nothing lost, and the colour change and dark mode kept every record.
In the data panel the admin can view rows, search, filter by created and updated dates (there is no per-field filter), edit a cell (saved and survived a reload) and delete (the row moves to Trash, and "Recently deleted" exists). Export is a CSV per table.
"Backup & Restore" is a Premium feature and a test data environment needs Builder. Record limits are not stated.
- Backup and restore and the test data environment were not run (plan limits).
Payments & Email Actions
5/5Tested- Method
- A Stripe test checkout from inside the app with the 4242 test card, a declined card (4000 0000 0000 0002), and the booking, studio-cancel and reset emails read from a seeded inbox.
- Checks passed
- 4 of 4
- Click to email
- same minute
- Remark
- Four of four is 5/5.
Raw notes
A Stripe test checkout from inside the app with the 4242 test card, a declined card (4000 0000 0000 0002), and the booking, studio-cancel and reset emails read from a seeded inbox.
Base44 installed its own unclaimed Stripe sandbox ("Sandbox: no real payments"), so I needed no keys. Checkout opened at $95.00. With the test card the payment succeeded, the success page showed the receipt, the order appeared in the admin's Payments tab and the member went from 0 to 5 credits. A second pass bought later by member A worked the same way.
The app's confirmCheckout function runs on the success page and writes the order. I saw no separate webhook, and I did not test a buyer who closes the tab before the redirect.
The declined card showed "Your credit card was declined" on the Stripe page, with no order and no credits.
The booking confirmation ("Booked: Reformer Basics, Monday 7:00 am") and the admin's "New booking" email arrived in the same minute as the click, at 08:45 UTC, in the inbox and not in spam. The studio-cancel email and the reset link also arrived within the minute. The sender is no-reply@notifications.base44.com, shown as "Fitting Room App".
- Branded and custom emails need Builder. Base44 notes that emailing people who have not signed up "works once you connect a custom domain".
Iteration & Credit Burn
5/5Tested- Method
- The twelve scripted changes, one at a time.
- First try
- 11 of 12
- Regressions
- 0
- Credits for the twelve
- 35.27
- Remark
- 11 or 12 first try with no regression is 5/5.
The twelve changes
| # | Change | Credits | Time | First try | Regression |
|---|---|---|---|---|---|
| 1 | Phone field on sign-up, shown on the admin member list | 2.25 | 7 min | Yes | None |
| 2 | Rename instructor to coach | 2.97 | 5 min | Yes (the route moved and both coach accounts migrated) | None |
| 3 | Dark green and cream colours | 2.25 | 2 min | Yes, but subtle: the draft was already green and cream | None |
| 4 | An About page | 2.83 | 3 min | Yes | None |
| 5 | Power Reformer capacity 4, rule holds | 2.96 | 21 min | Yes (the server refuses the fifth booking) | None |
| 6 | Coach filter on the timetable | 2.40 | 3 min | Yes | None |
| 7 | Planted bug ("do not give the credit back"), then fix | 2.82 to plant, 1.69 to fix | 2 min to fix | Yes (fix first try) | None after the fix |
| 8 | Second email when the admin cancels | 1.55, then 2.82 | 2 + 2 min | No: the email code worked but the Studio console had no cancel control | None |
| 9 | Phone layout, one class per row | 2.40 | 2 min | Yes (the draft was already responsive) | None |
| 10 | Bookings export for the admin only | 1.55 | 1.5 min | Yes (a screen restriction only: the one export is in the admin console) | None (one check failed once and passed on a re-run) |
| 11 | Waiting list with position | 3.95 | 5 min | Yes | None |
| 12 | Dark mode toggle, data kept | 2.83 | 2 min | Yes (persists on reload; classes, orders, bookings and messages intact) | None |
1
- Change
- Phone field on sign-up, shown on the admin member list
- Credits
- 2.25
- Time
- 7 min
- First try
- Yes
- Regression
- None
2
- Change
- Rename instructor to coach
- Credits
- 2.97
- Time
- 5 min
- First try
- Yes (the route moved and both coach accounts migrated)
- Regression
- None
3
- Change
- Dark green and cream colours
- Credits
- 2.25
- Time
- 2 min
- First try
- Yes, but subtle: the draft was already green and cream
- Regression
- None
4
- Change
- An About page
- Credits
- 2.83
- Time
- 3 min
- First try
- Yes
- Regression
- None
5
- Change
- Power Reformer capacity 4, rule holds
- Credits
- 2.96
- Time
- 21 min
- First try
- Yes (the server refuses the fifth booking)
- Regression
- None
6
- Change
- Coach filter on the timetable
- Credits
- 2.40
- Time
- 3 min
- First try
- Yes
- Regression
- None
7
- Change
- Planted bug ("do not give the credit back"), then fix
- Credits
- 2.82 to plant, 1.69 to fix
- Time
- 2 min to fix
- First try
- Yes (fix first try)
- Regression
- None after the fix
8
- Change
- Second email when the admin cancels
- Credits
- 1.55, then 2.82
- Time
- 2 + 2 min
- First try
- No: the email code worked but the Studio console had no cancel control
- Regression
- None
9
- Change
- Phone layout, one class per row
- Credits
- 2.40
- Time
- 2 min
- First try
- Yes (the draft was already responsive)
- Regression
- None
10
- Change
- Bookings export for the admin only
- Credits
- 1.55
- Time
- 1.5 min
- First try
- Yes (a screen restriction only: the one export is in the admin console)
- Regression
- None (one check failed once and passed on a re-run)
11
- Change
- Waiting list with position
- Credits
- 3.95
- Time
- 5 min
- First try
- Yes
- Regression
- None
12
- Change
- Dark mode toggle, data kept
- Credits
- 2.83
- Time
- 2 min
- First try
- Yes (persists on reload; classes, orders, bookings and messages intact)
- Regression
- None
Raw notes
The twelve scripted changes, one at a time. After each change I published and re-ran the 30 checks. Credits, seconds and results are in the ledger.
11 of the 12 changes worked first try. Number 8 needed a second prompt. No change broke any of the 30 checks.
Base44 never asked before a destructive action (it did not need to), and it did not fall into a loop of failed fixes. Change 11 showed one self-corrected test script.
The twelve changes used 35.27 credits including the bug plant (2.82) and the follow-up on change 8 (2.82).
- Four mistakes in my own check scripts cost no credits.
Publish, Speed & Mobile
3/5Tested- Method
- Publish to the Base44 address, connect my test domain with HTTPS (timed), seed 100 classes and 200 bookings through the app's own API, run Lighthouse mobile three times on the log-in page and the timetable, and count layout faults at 360, 768 and 1440 pixels.
- Live on the test domain
- about 12 min
- Median mobile score (6 runs)
- 74
- Layout faults
- 3
- Timetable, 100 classes
- about 2.9 s
- Remark
- A median of 74 is in the 50 to 74 band: 3/5. The domain works and the faults are few, which would give 4 on their own; the speed score decides.
Raw notes
Publish to the Base44 address, connect my test domain with HTTPS (timed), seed 100 classes and 200 bookings through the app's own API, run Lighthouse mobile three times on the log-in page and the timetable, and count layout faults at 360, 768 and 1440 pixels.
The Base44 address was live 12 seconds after I clicked Publish (each republish took 4 to 14 seconds). Base44 refused my first domain name with "You cannot use a domain that contains a social media platform" (the cause is unclear) and accepted fittingroom.test.rankdude.ai. I added the domain at 10:53, a failed DNS command of mine delayed the record to 11:02:12, and HTTPS answered 200 at 11:05:18, 3 minutes 6 seconds after the record. About 12 minutes in all, including that slip.
By default there is no robots tag. The prompt "add noindex" returned "this is a platform setting", changed no code and still cost 1.81 credits. I set it by hand in Dashboard > SEO & GEO (search visibility Off on 14 pages), and curl shows noindex, nofollow on every real page. robots.txt still says Allow: / and sitemap.xml is empty.
The timetable with 100 classes loaded in about 2.9 seconds. Lighthouse mobile (version 13.5.0, run locally because the PageSpeed API quota was spent): log-in page 74, 81, 81; timetable 63, 74, 67; median of the six 74. Largest paint 3.7 to 4.6 seconds, layout shift 0 to 0.215, blocking time 0 ms, 289 and 360 KB.
No page scrolled sideways. I counted 3 faults: the admin classes table is wider than a phone at 360 pixels (it scrolls inside its box), the "Forgot password?" link is 16 pixels high, and header links are about 20 to 28 pixels high at 768.
A web manifest is present (name, icon, theme) and there is no service worker.
- A real phone check and add to home screen were not done. The Publish dialog has a "Mobile app" tab, which was not tested.
Export & Ownership
1/5Tested- Method
- The plan was to export the code, unpack it, run it against my own database and re-run the 30 checks.
- Code export on Starter
- none (Builder and up)
- Data export
- CSV per table
- Vendor calls in the code
- @base44/sdk for log-in, data and functions
- Remark
- The scale grades what the plan under test can do. Starter has no code export, which is 'no export' on the published scale: 1. Builder and above offer a ZIP and GitHub sync, which were not tested.
Raw notes
The plan was to export the code, unpack it, run it against my own database and re-run the 30 checks.
On Starter, 'Export project as ZIP' opens 'Upgrade Required: ZIP file export is only available on Builder, Pro, Elite and Enterprise plans', and GitHub sync is 'Included in the Builder plan and above'. The owner chose not to upgrade, so no export was run.
What Starter gives: Dashboard > Code shows and edits every file. The front end imports createClient from @base44/sdk, and every page calls base44 for log-in, data and functions, so data calls go to Base44's own servers.
Base44's support assistant said Starter has no full code download, and that the Builder ZIP has front end code, backend functions and data structure, but not data records, secrets, app users or version history. Data export is a CSV per table on Starter.
Terms of service, read on the page on 25 October 2026: section 5.3 'the Customer owns all rights, title and interest in the code and applications generated by the Platform'; section 4.2 gives Base44 'an irrevocable, non-exclusive, worldwide, royalty-free, perpetual, fully paid, sub-licensable right and license' over customer data and output, including to 'train Company software tools (e.g. artificial intelligence and machine learning models)'; section 11.5 'reserves the right, in its sole discretion, to delete all Customer Data and Generated Output'; section 10.1 'the Fees are non-cancelable and non-refundable'.
- Needs a month of Builder ($50).
Support & Cancellation
5/5Tested- Method
- One question through Help & support > Open Support Ticket, then the cancellation as the last step.
- First answer
- under 1 min (AI assistant)
- Human reply
- none within 27 min
- Cancel
- self-serve, 3 screens, period end
- Further charge
- none listed
- Remark
- A substantive, correct first reply in under a minute, a self-serve cancel and a billing history with nothing further to pay is a 5 on the published scale. The reply came from an AI assistant; no human had answered within the half hour before the cancel.
Raw notes
One question through Help & support > Open Support Ticket, then the cancellation as the last step.
Ticket #6addfdda (category Billing) sent at 13:02 UTC on 25 October, asking whether Starter can get the full source code and data out. An AI assistant answered in under a minute, correctly and consistently with what I found, and warned it might make mistakes. No human reply by 13:29 UTC, when I cancelled; the ticket stayed open.
Cancelled at about 13:28 UTC through the dashboard: Settings, Plan & Subscriptions, the menu on the plan row, Cancel plan; a dialog listing what changes ('Keep current plan' / 'Continue to cancel'); a retention offer 'Keep building for $9 a month' (Lite), declined; a survey; 'Cancel Subscription'. No email or chat needed.
Result: 'Your plan is set to cancel on November 25, 2026. Reactivate to keep your current credits and features.' Auto Renew Off. Billing History: one invoice, 25 October, Starter, $21.77 USD, Paid; nothing further listed. No refund offered.
After 25 November, per the cancel dialog: up to 5 apps stay published, the Base44 badge returns, custom domains stop working, message credits drop to 25 a month and integration credits to 100, and code editing goes through chat only. At 13:29 UTC both https://fittingroom.test.rankdude.ai and https://fitting-room-pilates.base44.app returned HTTP 200.
- The human reply time will be read from the ticket later.
Pricing & Cost to Finish
4/5Tested- Method
- Prices were read on base44.com/pricing on 25 October 2026.
- Everything, message credits
- 47.62 of 100
- Cost at $20 per 100
- $9.52
- Integration credits
- 322 of 2,000
- Remark
- Finished inside the entry plan and a cap exists, but running costs need the next plan and credit prices are "about" figures: 4/5.
What it cost to finish the test app, 25 October 2026
| Stage | Message credits | Cost at $20 per 100 |
|---|---|---|
| Brief to first live app, 25 of 30 passing | 6.73 | $1.35 ($0.054 per passing check) |
| Plus one fix prompt, 30 of 30 passing | 10.54 | $2.11 ($0.07 per passing check) |
| The twelve changes (including the bug plant and one follow-up) | 35.27 | $7.05 |
| One extra prompt that changed nothing (noindex) | 1.81 | $0.36 |
| Everything | 47.62 of 100 | $9.52 |
Brief to first live app, 25 of 30 passing
- Message credits
- 6.73
- Cost at $20 per 100
- $1.35 ($0.054 per passing check)
Plus one fix prompt, 30 of 30 passing
- Message credits
- 10.54
- Cost at $20 per 100
- $2.11 ($0.07 per passing check)
The twelve changes (including the bug plant and one follow-up)
- Message credits
- 35.27
- Cost at $20 per 100
- $7.05
One extra prompt that changed nothing (noindex)
- Message credits
- 1.81
- Cost at $20 per 100
- $0.36
Everything
- Message credits
- 47.62 of 100
- Cost at $20 per 100
- $9.52
Base44 plans, US prices, 25 October 2026
| Plan | Monthly | Billed yearly | Message credits | Integration credits | Notes |
|---|---|---|---|---|---|
| Free | $0 | $0 | 25 a month | 100 a month | Up to 5 apps, no custom domain |
| Starter | $20 | $16 a month | 100 | 2,000 | Custom domain; no ZIP, GitHub or branded emails |
| Builder | $50 | $40 a month | 250 | 10,000 | Adds GitHub sync, ZIP export, branded emails, AI model select |
| Pro | $100 | $80 a month | 500 | 20,000 | |
| Elite | $200 | $160 a month | 1,200 | 50,000 |
Free
- Monthly
- $0
- Billed yearly
- $0
- Message credits
- 25 a month
- Integration credits
- 100 a month
- Notes
- Up to 5 apps, no custom domain
Starter
- Monthly
- $20
- Billed yearly
- $16 a month
- Message credits
- 100
- Integration credits
- 2,000
- Notes
- Custom domain; no ZIP, GitHub or branded emails
Builder
- Monthly
- $50
- Billed yearly
- $40 a month
- Message credits
- 250
- Integration credits
- 10,000
- Notes
- Adds GitHub sync, ZIP export, branded emails, AI model select
Pro
- Monthly
- $100
- Billed yearly
- $80 a month
- Message credits
- 500
- Integration credits
- 20,000
- Notes
Elite
- Monthly
- $200
- Billed yearly
- $160 a month
- Message credits
- 1,200
- Integration credits
- 50,000
- Notes
Raw notes
Prices were read on base44.com/pricing on 25 October 2026. The credit ledger priced everything from an empty account to the 30 checks at Starter's rate of $20 per 100 message credits.
The whole Fitting Room test used 47.62 of Starter's 100 message credits ($9.52), and 322 of the 2,000 integration credits, mostly my repeated checks of emails and backend calls.
At the limit, "actions that use credits pause until your next reset": a hard stop, not an overage bill. There is no auto top-up or credit pack, only a plan upgrade. Unused credits expire at each monthly reset (renews 25 November 2026).
Running it: Base44's published rates (docs.base44.com/Getting-Started/Credits, read 25 October) are about 1 credit per email (about 2 from a custom domain) and 1 per 100 backend calls, with database reads and writes free. 1,000 bookings a month sending 2 emails each is about 2,000 credits, or about 4,000 on a custom domain: over Starter's 2,000, inside Builder's 10,000. Stripe fees are separate.
Surprises: a prompt Base44 answered with "no code needed" still cost 1.81 credits, and Starter lacks ZIP, GitHub, branded emails, code security scanning and test data.
- A welcome offer banner showed 30% off yearly plans for 48 hours; prices change, so the date matters.
Coverage
Tested
- One brief built, published and checked with 30 written checks
- Two scripted attacks on the live app
- Six database and admin checks
- Stripe test checkout, a declined card and two emails
- Twelve changes with the 30 checks re-run after each
- Publishing, a test domain, noindex, 100 seeded classes, 18 Lighthouse runs and three layout widths
- One support ticket
- Plans, credits and the cost to finish
Not tested or limited
- Export was not run: Starter cannot download the code, and ZIP and GitHub need Builder at $50
- Support: a human reply had not arrived when I stopped, and the cancellation was not done yet
- A real phone check and the app-store route (the Publish dialog has a Mobile app tab) were not tested
- Builder-only features were seen and skipped: branded emails, code vulnerability scanning, test data environment, AI model select, backup and restore
Still to test
- Export: Builder ZIP run against my own database (test 8)
- Human support reply time and the cancellation (test 9)
- A real phone check and add to home screen
- Uptime on the test app