This paper proposes a convolutional neural network model to recognize handwritten digits using the MNIST dataset. The model is built using TensorFlow and consists of convolutional, pooling and fully connected layers. The model is trained on 60,000 images and tested on 10,000 images, achieving 98% accuracy on the training set and classifying digits with low error of 0.03% on the test set. Previous methods for handwritten digit recognition are discussed and the CNN approach is shown to provide superior performance with faster training times compared to other models.