BMW recommends replacing the engine air filter every 30k miles. I believe the cabin filters is recommended 15k miles. I am sure there is a time element to the cabin filters since they have a charcoal component that absorbs odors, and over time they are going to become saturated with contaminents regardless of miles/use (you can check the maintenance book for specifics). I change my cabin filters annually or 15k miles, which ever comes first. I actually change both at annual or 15k intervals, because the engine air filter is only $10 to $12 online for the recommended brands; Mahle, Hengst or Mann. Mann cabin filters can be found online for about $47 to $50 for the pair, Bosch are about $40. I think the BMW dealer ones are closer to $80 for the set. I have not found a significant difference between them, as long as they have the BMW specified charcoal in the filter.