Credit card fraud detection at the transaction level is a fairly complex problem in the consumer lending industry across the globe. This classification problem combines the intricacies of finding a needle in a haystack (highly imbalanced classes) and hitting a moving target (dynamic fraud pattern recognition) at the same time. To add to the issues, any wrong decision (misclassification) in approving or declining a credit card transaction either leads to an immediate and direct monetary loss to the lender or compromises the core of the business – “the genuine customer’s experience”. The credit card industry has come a long way in identifying fraudulent transactions by adopting various advanced statistical techniques over years. The fraudsters, however, are not laggards. They invent channels and target new loopholes. The alerts generated by analysis of location and amount of a transaction do not suffice anymore. This paper aims to a) highlight the significance of feature engineering in credit card fraud pattern recognition based on our industry experience, corroborated by a deeper analysis of the information collected for credit card transactions, and b) compare the performance of different machine learning algorithms and quantifying their value addition to naïve models.