Start with domain experience, not the size of the portfolio. Ask to see three or symfony enterprise application four case studies that sit close to your technology stack, difference between laravel and .net then find out whether those engineers are still with the company. A solid partner will introduce you to the people who would work on your project. Answers that name nobody at this stage usually mean the delivery team is not the team you were shown.
The agreement deserves more scrutiny than the proposal. A few clauses carry most of the weight: intellectual property assignment, confidentiality, and termination and handover. All the work product should transfer to you once invoices are settled, along with source code, designs and infrastructure as code. Be careful with language that leaves so-called reusable libraries with the vendor, as that is often the dependency that makes switching painful.
Find out how the estimate was built. A credible estimate is accompanied by a written set of assumptions, a task-level breakdown and a range rather than a single number. A fixed-price contract only makes sense when the specification is complete; when the scope is still moving the vendor laravel vs node js performance pads the number and you pay for uncertainty either way. Hourly billing moves the risk back to the client, so it requires a cap, regular demos and transparent reporting.
The delivery process beats the number of developers. Establish how change requests are handled, who defines done and what the QA setup looks like. A mature team can show you a live build at the end of each sprint. Clear, written acceptance criteria are the only reliable protection against endless rounds of rework.
Last, top react development companies consider the end of the engagement while the relationship is still good. Ask that the source repository sits under your account from day one, and that a readme and architecture notes are kept current as the code changes. A partner who is comfortable with this accepts it without argument; resistance at this point tells you quite a lot.