Independent public comparison
We asked HotDoc and Healthengine to find the earliest practical in-person GP appointment near Melbourne VIC 3000 for a new patient. We are not affiliated with either service or practice. This records public availability on 27 September 2026; appointments and fees can change quickly.
The Melbourne GP booking test
Search Melbourne 3000 for General Practice, choose an in-person standard appointment for a new patient and continue to the personal-details boundary.
Collins GP showed multiple appointments from 9:50am the next day. The selected path reached a quoted $94.85 fee and $50 out of pocket.
Healthcare on Collins showed 8:15am, but the new-patient type required changing to 9:00am. Its practice page listed a $112 standard GP fee.
Unsigned-in new patient booking for self, in person, no named-practitioner preference.
The first request for identity, contact, address and date of birth. We entered no personal or medical information and booked nothing.
Desktop Chrome fieldwork plus configured exact-page phone CrUX and mobile PageSpeed checks.
The 30-second result
HotDoc wins appointment discovery; Healthengine wins early price visibility. Neither protected the selected slot cleanly.
HotDoc is the narrow overall winner because its result cards exposed several times per practice and its three-step booking structure made progress easy to understand. Healthengine offered stronger billing, telehealth and availability filters, and published a $112 standard fee on the practice page before booking. But its first three results were “Featured”, its disclosure says payment can influence ranking, and the selected 8:15am slot had to be changed to 9:00am after “New Patient” was chosen. HotDoc also needs urgent copy governance: its fee warning named a different doctor from the one selected.
HotDoc made the appointment supply easier to scan
HotDoc showed several times directly on each practice card. Collins GP offered 9:50am and 10:20am the next day; Collins Street Medical Centre showed 8:15am, 8:30am and 10:45am; Healthcare on Collins showed 9:00am and 9:15am. A patient could compare location and genuine schedule shape without opening every result.

Healthengine added useful Date, Time, Telehealth and Bulk Billing filters, distances and recommendation scores. Most cards exposed only the next time plus “All availabilities”, so the patient had less schedule context. The two platforms also disagreed about the same Collins Street Medical Centre: HotDoc showed next-day times while Healthengine’s card showed Thursday 1 October at 9:15am. This test cannot establish which inventory was correct, only that patients could see materially different availability.

Round winner / HotDoc
Several visible times per card made the most common comparison faster and reduced repetitive openings.
Healthengine disclosed commercial ranking, but only behind a link
Healthengine’s “How we order these search results” explanation said providers with a Featured label may have paid to appear higher. It also said that where providers have a similar offering in the searched location, providers paying a higher fee may rank higher. The disclosure is direct once opened; the result list would be more trustworthy if that meaning sat beside the Featured label itself.

The fee information arrived at different moments
HotDoc asked whether the appointment was for the patient, whether they were new and which consultation type they needed. After Standard Consultation, it displayed $94.85, a $42.85 Medicare rebate and $50 out of pocket. That is useful arithmetic, but it arrived after the practice, time, practitioner and patient status were chosen.

Healthengine’s Healthcare on Collins page listed “Standard GP appointment (Level B)” at $112 and “Long GP appointment (Level C)” at $204 before booking. It also warned that prices were supplied by the practice and could vary by practitioner. That is better timing and qualification, even though the later new-patient flow did not repeat the amount next to the appointment choice.
Healthengine prevented omission, then changed the chosen time
At 8:15am, Healthengine offered “Any available practitioner” and Dr Ben Teoh. The next step disabled Continue until the patient chose who the appointment was for and whether they had attended before. That is effective error prevention: there was no empty submit to recover from.
After “Myself”, “No, I’m new to this practice” and “New Patient”, the service said that appointment type was available at different times and opened a new schedule. The earliest displayed replacement was 9:00am. It confirmed the revised slot before proceeding, but the original 8:15 choice had already shaped the user’s decision.

The final Healthengine step offered account providers or guest checkout, then asked for name, mobile, email, street address, suburb and date of birth. Marketing copy appeared immediately above the booking terms. We stopped before entering any of it.
Healthengine rendered faster; HotDoc responded faster than the good threshold
These p75 phone Chrome UX Report records cover the exact search URLs from 29 August to 25 September 2026. They are not measurements of the fee, time-change or personal-detail screens. Healthengine’s exact record contained no eligible INP value, which is missing evidence rather than a pass.
The configured mobile PageSpeed runs scored HotDoc 91 for accessibility and 100 for best practices, and Healthengine 75 and 73. HotDoc’s automated findings included contrast, heading order and small touch targets. Healthengine’s included unnamed buttons and links, missing image alternatives, contrast, list semantics, no main landmark and visible-label/name mismatches. Automated checks guide manual investigation; they do not establish WCAG conformance.
All ten Nielsen usability heuristics
Show booking progress.
HotDoc named three steps; Healthengine used a practitioner, type and personal-details rail.
Explain the money in patient terms.
HotDoc showed fee, rebate and out-of-pocket amount; Healthengine showed private billing and consultation levels.
Preserve the chosen time.
Healthengine changed the available schedule only after patient type was known.
Keep practitioner copy aligned.
HotDoc named a different doctor in the selected practitioner’s fee warning.
Disable incomplete continuation.
Healthengine prevented progress until required choices were made.
Expose several times together.
HotDoc reduced the need to remember availability across opened cards.
Support meaningful filters.
Healthengine offered time, date, telehealth and billing filters.
Keep commercial priority legible.
Featured practices occupied the first three Healthengine results.
Explain why a time changed.
Healthengine provided a replacement schedule and confirmation, but only after invalidating the slot.
Put fee caveats next to price.
Healthengine stated that practice-supplied prices may vary by practitioner.
What we would change first
Bind every warning to the selected practitioner.
What
Generate fee copy from the active doctor, practice and appointment type; fail closed on a mismatch.
Where
The appointment-details fee panel.
Why
A different doctor’s name can change clinical and financial decisions.
Measure
Content-mismatch incidents, backtracking and booking completion.
Explain Featured beside the label.
What
Add a short paid-placement explanation and keep the full methodology one action away.
Where
Every Featured result card.
Why
The first three cards were commercial placements and payment may affect ordering.
Measure
Disclosure comprehension and result-selection distribution.
Ask patient and appointment type before promising a slot.
What
Filter appointment inventory with the minimum eligibility questions before selection.
Where
Search-to-slot transition.
Why
The selected 8:15am was unavailable for a new-patient booking.
Measure
Forced time changes, exits and completed bookings.
Fix the structural accessibility backlog.
What
Name controls and links, add image alternatives and a main landmark, repair list semantics and contrast.
Where
The public search template and result cards.
Why
The configured mobile accessibility score was 75 and named these failures.
Measure
Automated violations plus keyboard and screen-reader task success.
What this public comparison cannot see
The selected practices and doctors were not identical, so the displayed fees are journey evidence, not a price contest. We entered no identity or health information, did not confirm Medicare eligibility and booked nothing. Availability, billing and practitioner participation can change.
We cannot infer clinical quality or conversion. Connected analytics could quantify result-card openings, forced slot changes, fee-screen exits, validation friction and completed bookings.