Discovery and a written scope
Every project starts with discovery: goals, users, screens and the business rules behind them. The result is a written scope that lists roles, features and integrations, and the quote is based on it. Later changes are scoped and quoted as separate phases.