Review collection does not require user email re-verification
Why it matters
Forcing re-verification on already-authenticated users tanks review submission rates — every extra step compounds drop-off, and CAPTCHA or email re-confirmation on an active session signals distrust of your own auth system. Submissions fall, aggregate ratings shrink, and schema.org AggregateRating eligibility suffers from thin review counts. The friction also pushes users to third-party review platforms where the data leaves your control.
Severity rationale
Low because the flow still works, but unnecessary verification steps measurably depress submission completion rates.
Remediation
Trust the active session in api/reviews/submit and skip CAPTCHA, email re-verification, and second-factor challenges for logged-in users. Reserve anonymous-path friction (email entry, lightweight CAPTCHA) for unauthenticated submissions only:
if (!session?.user) {
const email = req.body.email
await verifyAnonymousSubmitter(email)
} else {
await db.reviews.create({
data: { user_id: session.user.id, rating, text }
})
}
DetectionPro
The detection method for this pattern is part of AuditBuffet Pro.
The full method (what to look for, pass and fail conditions, and how results get reported) ships inside the Reviews & Social Proof Audit. The pattern definition, severity rationale, and remediation remain openly licensed under CC-BY-4.0.
Taxons
History
- 2026-04-18·v1.0.0·Initial import from ecommerce-reviews·automated