getCabrito – Email Open and Click Tracking Server

getCabrito - Email Open and Click Tracking Server


Email open & click tracking server for goCabrito. It works extactly similar to marketing emails. It detects the uniqly generated URLs for each sent email. In nutshell, it’s like goPhish tracking opens and clicks to give statistics however getCabrito is not a full solution like goPish it just tracks and save the tracks in a sqlite database.

The script takes a sqlite database generate by goCabrito. The generate database by goCabrito contains all the users that have been tracked by injecting one or more of the tracking tags {{track-open}} or {{track-click}}.

Once the tracking URL is visited, it maps the hash from the URL with current database records. It then update the database with the required information such as:

  • click_at
  • click_count
  • open_at
  • open_count
  • user_agent
  • ip_addr
  • loots (submitted data if any POST request)

Although getCabrito updates the given database with the above collected data, it writes in visits.log file for debugging

{“target_id”=>2, “email”=>”[email protected]”, “hash”=>”251d01e26c5aada16a6d713b4de70bb89ff3298f”, “session”=>”1bb38e017d5f72905d8fc6964e271b5f94f0cbc6c997e862fad646e87e05c3ec”, “click_at”=>”2021-06-21 09:10:56 +0300”, “open_at”=>”2021-06-21 09:10:56 +0300”, “user_agent”=>”Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36”, “ip_addr”=>””, “click_count”=>5, “open_count”=>1}: {“loot_id”=>27, “loot”=>”[email protected]”, “target_id”=>2}:

Note: I’ve added some queries that might help you to generate some statistics after you finish your campagin(s).

All what you need to do is after/during the campagin, you run these scripts against the sqlite database you have get some numbers

  • number of clicks
  • number of opens
  • data submitted
  • visits


apt-get install build-essential libsqlite3-dev sqlite3

gem install sinatra rerun sqlite3

rerun ‘ruby getCabrito.rb sql.db’

You May Also Like

Leave a Reply

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

5 + 14 =