This document describes a system for soil analysis and crop prediction using IoT technology. The system measures soil parameters like temperature, humidity and nutrients (nitrogen, phosphorus, potassium) using sensors. It analyzes the soil data and predicts the suitable crops for the soil type. An Arduino board is used to collect data from the sensors via WiFi. The data is sent to a Blynk server which uses machine learning algorithms to analyze the soil conditions and suggest appropriate crops to the farmer via notifications. The system aims to help farmers choose optimal crops and increase agricultural productivity and profits. Tests were conducted and the system was able to accurately measure soil parameters, send alerts, and predict suitable crops based on the soil analysis.