E-mail Tracker

Share this post:
Github URL
Github

A simple email-tracker that sends you an email when the receiver of your email opens it.

Salient features:

  • Simple registration process, no need to sign-up. You just have to enter your and email receiver’s email address.
  • A single line HTML code that needs to be placed in the body of your email.
  • No trace of the email being monitored.
  • You will get emails whenever the receiver opens that particular email.
The front page of the website

How to use:

  1. Visit the given website. The email tracker is currently hosted at https://emailtrack.herokuapp.com/. It may be moved to self-hosted domain later.
  2. Enter the sender and receiver’s email addresses and click on the Sign-up button.
  3. Copy the HTML code being shown
After signing up
After signing-up

4. Paste the HTML code (<img src…</img>) in the body of your email. Use this video to get help.

5. Send your email and wait for the receiver to open your email.

Sample of email
The email you receive when the receiver has opened the email

How does it work

The HTML code you paste in your email sends a GET request to the server for a 1-pixel big image. Each code has a unique ID that gets saved in our server.

Why 1-pixel big image? So that it is not visible in your email.

Now when the server gets a request for the image from a given ID, it checks the database and notifies the sender of the email.

Technologies used:

The whole code is written in Python. The website uses Flask at the backend and HTML & CSS at the frontend. Since I was making it for myself and I needed it as soon possible, I used a simple CSV file as the database. It is not feasible for a big project so I will port it to use a NoSQL database.

To-do

  • Make APIs so that anyone can use it in their project.
  • Make Chrome extension to remove the manual work of adding the HTML code.
  • Use a better database.
Share this post:

1 thought on “E-mail Tracker”

  1. Pingback: Looking Back - 2019-20 - Prashant Sengar

Leave a Comment

Your email address will not be published. Required fields are marked *