Every required field past email and password measurably lowers signup completion. Consumer SaaS funnels typically lose 10-30% of users per additional required field, and fields like phone number or company name trigger abandonment from users who resent handing over data before seeing the product. The user experience taxon captures this: friction at the account-creation step is the highest-leverage conversion point in the funnel, and asking for data you do not need yet is pure leakage.
Medium because the impact is conversion loss rather than a security or data-integrity failure.
Strip the signup form down to email and password (or OAuth only) and move everything else to a post-signup profile step. Edit src/app/(auth)/signup/page.tsx to render only the two required inputs, then redirect to src/app/(app)/onboarding/page.tsx where non-essential fields like company, phone, and role can be collected progressively once the account exists.
<form onSubmit={handleSignup}>
<Input name="email" type="email" required />
<Input name="password" type="password" required />
<Button type="submit">Create account</Button>
</form>
ID: saas-onboarding.signup-flow.signup-form-minimal
Severity: medium
What to look for: Find the signup/registration form component. Count every required field the user must fill in before creating an account. Quote the field names and their required/optional status.
Pass criteria: The signup form requires no more than 3 fields (e.g., email + password, or name + email + password). Social/OAuth-only signup with no form fields also passes. Report even on pass: "Signup form has N required fields: [field names]."
Fail criteria: The form requires 4 or more fields before account creation (e.g., company name, phone number, job title, address, referral source are all required at signup time).
Do NOT pass when: Optional fields are rendered with no visible "optional" label and look identical to required fields — users perceive them as required even if technically skippable.
Skip (N/A) when: No signup form is found in the codebase — project has no user authentication or uses an embedded third-party widget where form fields are not configurable (e.g., a Clerk <SignUp /> component with no customization).
Detail on fail: List the required form fields found. Example: "Signup form requires 5 fields: name, email, password, company name, phone number. Fields beyond email+password increase drop-off."
Remediation: Reduce the signup form to the minimum. In src/app/(auth)/signup/page.tsx or equivalent:
<form onSubmit={handleSignup}>
<Input name="email" type="email" required />
<Input name="password" type="password" required />
<Button type="submit">Create account</Button>
</form>
Move additional fields to a post-registration profile setup step at src/app/(app)/onboarding/page.tsx.