1. A computer-implemented method comprising: receiving, from a first data storage device, data encoding an advertisement item and a log comprising a plurality of previously submitted search criteria, wherein each search criterion comprises one or more terms, and wherein when the search criterion was evaluated, the advertisement item was presented in a corresponding search result webpage; analyzing the plurality of previously submitted search criteria to identify one or more negative keywords including: identifying, from the plurality of previously submitted search criteria, a subset of search criteria as being off-topic to the advertisement item, and deriving the one or more negative keywords from the subset of off-topic search criteria; generating one or more files including the one or more negative keywords, the one or more negative keywords being used to prevent the advertisement item from being presented in a search result corresponding to a later submitted search criterion containing at least one of the identified negative keywords; and storing the one or more files on the first data storage device or a second data storage device.