RankDude

Test log

FlutterFlow test data

Raw results for the FlutterFlow review. The verdict is in the review.

Tested
26 October 2026
Tester
Miles Foster
Account
Paid for by RankDude at the public price
Tests
9
Screenshots
9
Environment
Google Chrome on desktop

Results

IDTestKey measurementScore
T01Sign-in & Access ControlAccounts I could create: 0 of 4n/a
T02Database & AdminChecks proved: 0 of 6n/a
T03Iteration & Credit BurnChanges that could run as a prompt: 1 of 12n/a
T04Prompt to Working AppBrief to the first screens: 2 min1/5
T05Spec AccuracyChecks passed, of 24 without keys: 21/5
T06Publish, Speed & MobileTime from Publish to live: 2 min 12 s2/5
T07Export & OwnershipCode download on Basic: yes3/5
T08Support & CancellationTime to a full answer: 3 min4/5
T09Pricing & Cost to FinishPaid: $33.973/5
Overall (in the review)2.3/5
T01

Sign-in & Access Control

n/aNot Tested
Method
I looked for sign-up, log-in and password reset for a member, an instructor and an admin on the live app, then tried the two attacks: a member asking for another member's bookings, and a member calling an admin-only action.
Accounts I could create
0 of 4
Admin screens open to any visitor
yes
Data requests made by the app
none
Remark
Sign-in is not graded: it needs a Firebase or Supabase backend that only you can connect.

FlutterFlow test app first screen with the title Fitting Room and three buttons: Member, Instructor and Admin, under Welcome back.

FlutterFlow test app first screen with the title Fitting Room and three buttons: Member, Instructor and Admin, under Welcome back.
T01-1 The first screen: pick a role, no log-in.
Raw notes

I looked for sign-up, log-in and password reset for a member, an instructor and an admin on the live app, then tried the two attacks: a member asking for another member's bookings, and a member calling an admin-only action. I also recorded every network request the admin screen makes, and read the editor's Authentication setting.

There is nothing to log in to. The first screen asks which kind of user you are (Member, Instructor, Admin) and each button just opens that role's screens. In the editor, Authentication is switched off, and the Firebase page says no project is connected. I could not create the four test accounts or reset a password.

Both attacks had nothing to attack. The admin screen opens for any visitor who types its address, with no session, and the app makes no data request at all, only the page load. The delete button on a class does nothing. Every visitor sees the same made-up bookings, so one member can read what looks like another member's bookings without asking.

  • Firebase Authentication was not set up, so what you would get with a backend connected was not tested.
T02

Database & Admin

n/aNot Tested
Method
The six data 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 them, and they export as a file.
Checks proved
0 of 6
Collections or data types made
0
Remark
The database is not graded: it needs a Firebase or Supabase backend that only you can connect.

FlutterFlow test app Instructor Dashboard saying Hello Lena Park, Today Mon May 15, Reformer Basics 8 of 8 booked and an attendee list with Sarah Jenkins, Michael Chen, Emma Wilson and David Miller.

FlutterFlow test app Instructor Dashboard saying Hello Lena Park, Today Mon May 15, Reformer Basics 8 of 8 booked and an attendee list with Sarah Jenkins, Michael Chen, Emma Wilson and David Miller.
T02-1 The instructor screen: four members the brief never mentioned, and Mark Present does nothing.
Raw notes

The six data 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 them, and they export as a file. I also opened the editor's Firestore and data type screens.

None of the six could be proved. The Firestore page reads No Collections Created and the Data Types page No Data Types Created. The Ask the studio form did nothing when I pressed Send Message, so no record was made. The CSV button did nothing. The sample members in the downloaded code are typed into it as text, for example Sarah Jenkins, and nothing is read from a database.

FlutterFlow does not host a database of its own for these apps. Data comes from Firebase or Supabase, which you connect. The AI did not connect either.

  • A Firebase or Supabase backend was not connected, because that needs your own account.
T03

Iteration & Credit Burn

n/aNot Tested
Method
The twelve scripted changes, one prompt each, on the live app.
Changes that could run as a prompt
1 of 12
AI requests I made in total
2
Remark
Fewer than 8 of the 12 changes could run, so there is no grade.

FlutterFlow editor showing a generated About the Studio page with the made-up address 123 Fashion Ave, phone +1 (555) 012-3456 and email hello@fittingroom.studio, and the prompt in the page description box on the right.

FlutterFlow editor showing a generated About the Studio page with the made-up address 123 Fashion Ave, phone +1 (555) 012-3456 and email hello@fittingroom.studio, and the prompt in the page description box on the right.
T03-1 The About page the prompt made, with an address, phone and email that are not in the brief.
Raw notes

The twelve scripted changes, one prompt each, on the live app.

I could not run the twelve changes as prompts. FlutterFlow's web editor has no chat that changes an app you already have. The command search (Ctrl K) offers Add Page with Designer and Add Component with Designer, which make a new screen from a description, and an AI Agent panel that needs the Windows desktop app and your own Claude or Codex login.

I tried the one change a new screen can answer, E04, an About page with the studio address, phone and email. It made the page in about 45 seconds and ignored the project: it wrote 123 Fashion Ave, Suite 400, Design District, NY, a phone number of +1 (555) 012-3456, the email hello@fittingroom.studio, a line calling Fitting Room a digital tailoring assistant and a version number, 2.4.0. None of it is in the brief, and the page is not linked from any screen. Because fewer than 8 of the 12 changes could run, the test is not graded.

  • Making the other eleven changes by hand in the visual editor is possible but is not what this test measures.
T04

Prompt to Working App

1/5Tested
Method
The Fitting Room brief was pasted word for word (1,689 characters) into the Instant Generation box on the Projects page at 16:40 UTC on 26 October 2026.
Brief to the first screens
2 min
Brief to a live app
12 min
Prompts, plus two hand fixes
1
Checks passing, of 24
2
Remark
The app was live in 12 minutes, but 25 of 30 (20 of 24 here) was never reached, so the build is a 1.

FlutterFlow editor showing the generated Class Timetable page of the Fitting Room app, with Reformer Basics and a Book Class button, the widget panel on the left and the properties panel on the right.

FlutterFlow editor showing the generated Class Timetable page of the Fitting Room app, with Reformer Basics and a Book Class button, the widget panel on the left and the properties panel on the right.
T04-1 A generated screen, the Class Timetable, in FlutterFlow's editor.
Raw notes

The Fitting Room brief was pasted word for word (1,689 characters) into the Instant Generation box on the Projects page at 16:40 UTC on 26 October 2026. The clock stops when the app is live and the checks pass: 25 of 30 on the full scale, applied here as 20 of the 24 checks that need no keys of mine.

The first screens were in the editor about two minutes after I pressed send: nine pages, called Landing and Auth, Purchase Passes, Class Timetable, My Bookings, Instructor Dashboard, Admin Class Management, Admin Booking Export, Ask the Studio and Admin Inquiry Inbox, plus an Account Settings page. The project had Android and iOS switched on and web off, and one error: a Navigate action with no page chosen. Publish refused to run until I fixed that by hand.

I switched web on, chose a page for the action and pressed Publish at 16:50. The app answered at 16:52, 12 minutes after the brief, in 1 prompt and 2 hand fixes. It never reached 20 of the 24 checks: 2 passed.

  • Both hand fixes were part of the 12 minutes.
T05

Spec Accuracy

1/5Tested
Method
The checks were run against the live app, by hand, with a note per check.
Checks passed, of 24 without keys
2
Left out, need the owner's keys
6
Buttons I pressed that did nothing
9
Made-up bookings shown to every visitor
142
Remark
2 of 24 is 8%, below the 33% a 2 needs, so accuracy is a 1.

FlutterFlow test app timetable with Reformer Basics on Monday June 10 at 7:00 AM for 50 minutes with Lena Park and 8 spots left, a Book Class button, and a blank white area under the content.

FlutterFlow test app timetable with Reformer Basics on Monday June 10 at 7:00 AM for 50 minutes with Lena Park and 8 spots left, a Book Class button, and a blank white area under the content.
T05-1 The live timetable. Book Class does nothing, and the page ends in a blank block.

FlutterFlow test app Booking Export screen with an Export all as CSV button, Total Bookings 142, This Month 38 and recent activity for Sarah Jenkins and Michael Chen.

FlutterFlow test app Booking Export screen with an Export all as CSV button, Total Bookings 142, This Month 38 and recent activity for Sarah Jenkins and Michael Chen.
T05-2 The admin export screen: 142 bookings and two members the brief never mentioned.
Raw notes

The checks were run against the live app, by hand, with a note per check. The six checks that need your own Stripe and email keys (C24 to C29) are left out, so the thresholds are applied to the 24 that remain: 5 needs 93% or more (23 or more), 4 needs 80% (20), 3 needs 60% (15), 2 needs 33% (8) and 1 is below that.

2 of 24 checks passed, which is 8%. Passing: the timetable shows Reformer Basics, Mat Flow and Power Reformer with their days, times and durations (C05), and each class shows its instructor and a places-left line (C06).

The other 22 failed. There is no sign-up, log-in, log-out or reset (C01 to C04), pressing Book Class changes nothing (C07), and so My bookings, cancelling, the capacity rule, credits and the per-member rules (C08 to C12) do not exist. The instructor, admin and form screens look right but nothing on them works: Mark Present, Add Class, the edit and delete icons, Export all as CSV and Send Message all did nothing (C13 to C23). The day tabs at the top of the timetable do not switch either.

Nothing is saved, so the screens show sample data the AI made up: four members (Sarah Jenkins, Michael Chen, Emma Wilson and David Miller), 142 bookings, 38 this month, 22 total bookings, 84% capacity, 3 pending messages with example.com addresses, and 3 classes left on a member's balance. The timetable dates are fixed text (Monday, June 10), and the instructor screen says today is Monday May 15. So the app invents members, counts and messages (C30).

  • Payments and the declined-card check were not run: they need your own Stripe key.
T06

Publish, Speed & Mobile

2/5Tested
Method
Publish to the free flutterflow.app address, timed, then three Lighthouse phone runs on the home page of https://fitting-room-0auira.flutterflow.app.
Time from Publish to live
2 min 12 s
Phone speed score, median of three
47
Largest paint
17.9 s
Page weight
3.2 MB
Remark
A median of 47 is in the 30 to 49 band: 2.

FlutterFlow test app first screen on the flutterflow.app address with the Fitting Room title and a Built in FlutterFlow badge in the corner.

FlutterFlow test app first screen on the flutterflow.app address with the Fitting Room title and a Built in FlutterFlow badge in the corner.
T06-1 The live app on its flutterflow.app address.
Raw notes

Publish to the free flutterflow.app address, timed, then three Lighthouse phone runs on the home page of https://fitting-room-0auira.flutterflow.app.

The Publish button on the Web Deployment page refused at first with a toast saying Fix errors in the project before publishing, and the generated project had web switched off. After the two fixes the app answered 2 minutes 12 seconds after I pressed Publish. The page carries a Built in FlutterFlow badge and a noindex tag, and the editor lists Allow Search Engine Indexing as off. The Basic plan includes one custom domain (the account page shows 1 available, 0 connected); I did not connect one.

The phone speed scores were 47, 48 and 42, median 47. The largest contentful paint was about 17.9 seconds, the page weighs about 3.2 MB, and the blocking time was between 0.8 and 1.4 seconds. Every page I opened ended in a blank white block under the content. A timetable with 100 seeded classes, layout faults at three widths and a real phone were not tested.

  • Home page only; no domain; no layout fault count.
T07

Export & Ownership

3/5Tested
Method
The Developer Menu in the editor, Download Code, on the Basic plan.
Code download on Basic
yes
Files in the download
178
Vendor packages in pubspec
none
Remark
The code leaves as a plain Flutter project, but it is a front end with no backend: 3.

FlutterFlow account page Subscriptions section: Personal Plan monthly, renews on Nov 26 2026, Basic at $31 a month with Upgrade Plan, Switch to Annual and a bin button, and Custom Domains connected 0 of 1.

FlutterFlow account page Subscriptions section: Personal Plan monthly, renews on Nov 26 2026, Basic at $31 a month with Upgrade Plan, Switch to Annual and a bin button, and Custom Domains connected 0 of 1.
T07-1 The account page on the Basic plan: one custom domain available, none connected.
Raw notes

The Developer Menu in the editor, Download Code, on the Basic plan. I unpacked the file in a clean folder outside the repository and read it. I ran no build, because Flutter and Dart are not installed on my machine, and I ran no install script.

Download Code worked on Basic: a 425 KB file called fitting_room.zip with 178 files arrived in about 8 seconds. It is a standard Flutter project (lib, android, ios, web, assets, pubspec.yaml). The pubspec lists no Firebase, Supabase or FlutterFlow service package, because none was connected. A flutter_flow folder in the project holds the helper code FlutterFlow generates, in the open. Connect GitHub and Open in VS Code are marked as Growth features.

What the code holds is the front end only: the screens, with the sample names typed into them. There is no backend to run. Whether it builds I did not test. The terms were not read.

  • Read, not built; licence terms not quoted.
T08

Support & Cancellation

4/5Tested
Method
One real question by email to support@flutterflow.io, sent at 00:42 UTC on 27 October 2026 (outside US business hours): which backend to add for sign-in and data, how to keep admin screens for admins, and how to export the data.
Time to a full answer
3 min
Clicks to cancel
4
Remark
A reply under 4 hours, a self-serve cancel and a correct invoice are a 5 on the scale. I took one off because the sign-up part of my question went unanswered and the export answer had no steps, so 4.
Raw notes

One real question by email to support@flutterflow.io, sent at 00:42 UTC on 27 October 2026 (outside US business hours): which backend to add for sign-in and data, how to keep admin screens for admins, and how to export the data. I had also posted it in the community forum on 26 October, where it was still waiting for approval.

An automatic acknowledgement came after 30 seconds, and a full answer from FlutterFlow Support at 00:45, 3 minutes after I sent the question. It said Firebase is often simpler to start with for a small booking app and Supabase gives more control over permissions. For admin screens it described adding an isAdmin field and sending users to the admin page only when it is true, with links to the documentation. On export it said data is exported from the database provider, not from FlutterFlow, and gave no steps. It did not answer how to stop people choosing the admin role at sign-up.

Cancelling is self-serve on the account page, in four clicks. The plan then read Active until 26 November 2026 and the billing page showed no further charge. The only invoice, $33.97, matched the plan, the regional discount and the tax.

  • The 7-day and 30-day checks on the app after cancelling cannot be done yet: the plan runs to 26 November 2026.
T09

Pricing & Cost to Finish

3/5Tested
Method
The pricing page, the account page and the invoice in Manage Billing were read on 26 October 2026.
Paid
$33.97
AI requests I made
2 of 50
Remark
The price is clear, but the app I paid for does not run without a backend whose cost I could not price: 3.

FlutterFlow billing page showing the current subscription, Basic Plan $33.97 per month, with Basic Plan $39.00, a Regional 20% discount of minus $7.80, Tax $2.77 and Total $33.97.

FlutterFlow billing page showing the current subscription, Basic Plan $33.97 per month, with Basic Plan $39.00, a Regional 20% discount of minus $7.80, Tax $2.77 and Total $33.97.
T09-1 The invoice for Basic: list price, regional discount, tax and the total.
Raw notes

The pricing page, the account page and the invoice in Manage Billing were read on 26 October 2026. FlutterFlow shows no AI request counter.

I paid $33.97 for one month of Basic. The invoice reads Basic Plan $39.00, Regional 20% discount minus $7.80, Tax $2.77, total $33.97, so the pricing page showed $39 while the account page said $31 a month. On my first visit the pricing page itself showed $31.2; on later visits it showed $39. I do not know why it changed. I cancelled the plan when the testing ended: trash icon on the plan row, a confirmation saying the plan stays functional until 26 November 2026, a short survey (I chose No longer needed), then Plan canceled. The account then read Active until Nov 26, 2026 with a Reactivate Plan button, and the billing page read Your service will end on November 26, 2026 with no further charge. The only invoice is the $33.97 one.

The plan includes 50 AI requests a month and 100 Lite credits; Free has 5 AI requests for life and 10 Lite credits. I made 2 AI requests and cannot read the balance. The app does not work without a backend from Google (Firebase) or Supabase, and I did not price that part, so the running cost is unclear.

  • Yearly prices were read, not bought. The AI request counter is not shown.

Coverage

Tested

  • One brief typed word for word into the Instant Generation box
  • 24 of the 30 written checks (C24 to C29 need keys), run on the live app
  • Two access attacks, and a look at the app's network requests
  • Sign-up, log-in and password reset for each role, looking for them in the app
  • Publishing to the flutterflow.app address, timed, and a phone speed run
  • The Download Code option, unpacked and read in a clean folder
  • The plan page, the invoice, the pricing page and the cancel steps
  • One new page from a prompt, to see what the Generate Page box does with the project

Not tested or limited

  • Payments and emails need your own keys, so the six checks C24 to C29 were left out and the actions test is not graded
  • No Firebase or Supabase backend was connected: connecting one means signing in with a Google account or entering keys that are yours, so the sign-in and database tests are not graded. The access findings stand as facts about the app as the AI built it: it has no sign-in or data
  • The web editor has no chat that changes an existing app, so none of the twelve changes could be run as a prompt and the iteration test is not graded. The AI Agent panel needs the Windows desktop app and your own Claude or Codex login, which I did not use
  • Support: the community forum post of 26 October 2026 was still waiting for approval; the email answer is the one graded. It was sent outside US business hours, and I did not test the live chat, which starts at Growth
  • FlutterFlow shows no counter for AI requests or credits, so I could not read how many were used; I made two AI requests
  • The exported project was read, not built: Flutter is not installed on my machine
  • Speed was measured on the home page only, three runs, with no real phone and no layout fault count; no custom domain was connected and the terms were not read

Still to test

  • Payments and the declined card with your own Stripe key
  • The app with a Firebase or Supabase backend connected, and the twelve changes made through the AI Agent
  • A custom domain and a timetable with 100 seeded classes
  • Layout faults at three widths and on a real phone
  • Uptime on the test app
What these results meanRead the full FlutterFlow review