Patent ID: 8615436

Claim:
A computer-implemented method, comprising: identifying, by a data processing device and for allocation, advertisement spots in an advertisement block, wherein the advertisement block includes two or more contiguous advertisement spots, each advertisement spot being a time-slot during which an advertisement is presented, the advertisement block having a full block restriction that requires every advertisement spot in the advertisement block to be allocated in order for any advertisement spot in the advertisement block to remain allocated; receiving, by a data processing device, bid criteria from bidders; allocating, by a data processing device, individual advertisement spots from the advertisement block to first bidders based on per-spot prices for the first bidders, the per-spot price for each of the first bidders being based on the bid criteria and specifying a maximum price that the first bidder will pay for being allocated only one individual advertisement spot in the advertisement block; determining that the full block restriction is violated based on at least one of the advertisement spots in the advertisement block having not been allocated based on the per-spot price allocation; in response to determining that the full block restriction has been violated, de-allocating, by a data processing device, the allocated advertisement spots in the advertisement block; and re-allocating, by a data processing device, a set of two or more contiguous advertisement spots in the advertisement block to a same first bidder based on per-bid prices for the first bidders, the per-bid price for each of the first bidders being based on the bid criteria and specifying a maximum price that the first bidder will pay for being allocated the set of two or more contiguous advertisement spots in the advertisement block.