There have been various suggestions about how information is encoded in neural spike trains: by the number of spikes, by the temporal correlations, or by complete patterns. The latter scheme is most general, and encompasses many others. However, the search for pattern codes requires exponentially more data than the search for mean rate or correlation codes. Here we describe a method that enables optimal use of whatever quantity of data is available. This method allows spike trains to be studied with variable, non-uniform temporal precision. Precision is optimized to provide a best lower bound for the information content of spike patterns given the available data.