Scope starts with output contract, not crawler strategy
Define destination format, field list, update cadence, and acceptable miss rate before discussing implementation details. This keeps effort aligned with business use instead of engineering preference.
Classify target complexity up front
Public static pages, JS-rendered apps, authenticated flows, and anti-bot-heavy targets each carry different reliability and maintenance cost. If this isn’t explicit early, quote accuracy collapses.
Acceptance criteria prevent endless revision loops
Set pass/fail checks for field completeness, dedup rules, and delivery schedule. A clear acceptance gate protects both delivery quality and budget predictability.