Loading data...
Prices are drawn from three sources (Tryst, AdultWork, EuroGirls) and standardized to a comparable hourly rate in USD. Multi-currency rates are converted using historical exchange rates on the scrape date.
When a profile lists a 1-hour incall rate, that rate is used directly.
When it isn't available, we fall back through 1h outcall, then longer
durations (2h, 3h, 4h, 6h, 12h, overnight, 24h). Dividing a longer-duration
rate by its hours consistently under-states the comparable hourly price
because longer packages carry a per-hour discount, so each derived value
is multiplied by a per-source, per-duration scaling factor — the median
rate_1h / (rate_duration / hours) ratio computed from profiles
that list both.
Every row carries an hourly_price_source label
(e.g. observed_1h_incall, derived_2h_outcall,
derived_overnight_incall) so the provenance of each estimate
is traceable. Source-specific attributes (AdultWork's is_enhanced,
EuroGirls' weight_kg / languages) are only available
under their originating source — they are deliberately omitted from the
combined "All sources" view to avoid misleading aggregates.