This document describes a crop recommendation system that uses machine learning techniques to maximize crop yields. The system collects soil data from testing labs and combines the data with crop information from experts. It then uses an ensemble model with majority voting to recommend crops for specific soil parameters. The ensemble uses support vector machine and artificial neural network learners to make recommendations with high accuracy. The goal is to help farmers choose crops best suited to their soil needs and increase productivity.