A computer program product comprising a non-transitory computer readable storage medium having instructions encoded thereon that, when executed by a processor, cause the processor to:
- generate, at an online system, based on previously recorded content presentations, bid amount distributions for users of the online system, a bid amount distribution for a user indicating bid amounts specified by third party systems for content that is selected for presentation to the user;
- receive, at the online system, third party specifications for content from a third party system, the third party specifications indicating at least targeting criteria specifications, a total time period for content presentation, a bid amount specification, and a total budget specification;
- and
- generate a simulation for presenting the content to users of the online system based on the third party specifications, each iteration of the simulation comprising:
- randomly selecting a user of the online system matching the targeting criteria specifications;
- accessing the bid amount distribution for the randomly selected user;
- computing a selection probability of a successful content presentation to the randomly selected user based on the bid amount distribution for the randomly selected user and the bid amount specified in the third party specifications;
- simulating a potential content presentation based on the selection probability;
- modifying a total budget amount based on an outcome of the simulation, the total budget amount based on the total budget specification;
- decrementing a remaining time amount, the remaining time amount based on the total time period for content presentation specification;
- responsive to the total budget amount or the remaining time amount being greater than zero, executing another iteration of the simulation;
- responsive to the total budget amount or the remaining time amount reaching zero, end the simulation;
- generate simulation statistics based on the results of the simulation;
- and
- transmit a report to the third party system, the report including the simulation statistics.