Order providers by cost and hit rate for the specific field, stop at first match, and never call a provider for a record you already resolved. Enrich only the fields your routing, scoring and territory rules actually read — everything else is spend with no decision attached.
Track hit rate per provider per field so the order can be re-tuned with evidence rather than vendor claims. Add an enrich-status field and a fallback queue: the records nobody can resolve need an owner, or they become the invisible pile that makes routing look broken.
Every claim above comes from work LeanScale published. These are the sources.