An advertisement can be presented by associating a label with an advertisement, receiving input from a user, wherein the input comprises one or more labels, identifying a match between the label associated with the advertisement and the input, and presenting the advertisement to the user. A bid further can be received for presenting the advertisement in response to input from a user that includes the associated label and an advertisement presentation order can be determined based on one or more of the bid, a click-through rate of the advertisement, and a conversion rate of the advertisement. Additionally, a negative label can be associated with the advertisement. Further, an additional input comprising one or more labels can be received from the user, a match can be identified between the negative label and the received additional input, and it can be determined not to present the advertisement based on the identified match.