Current list of spy pixels named'n'shamed in HEY, as of April 23, 2020

February 2, 2021 ยท View on GitHub

module Entry::TrackerBlocking extend ActiveSupport::Concern

included do has_many :blocked_trackers end

email_service_blockers = { "ActiveCampaign" => /lt.php(.)?l=open/, "AWeber" => "openrate.aweber.com", "Bananatag" => "bl-1.com", "Boomerang" => "mailstat.us/tr", "Campaign Monitor" => /cmail(\d+).com/t//, "Cirrus Insight" => "tracking.cirrusinsight.com", "Close" => "close.com/email_opened", "Constant Contact" => "rs6.net/on.jsp", "ContactMonkey" => "contactmonkey.com/api/v1/tracker", "ConvertKit" => "convertkit-mail.com/o", "Critical Impact" => "portal.criticalimpact.com/c2/", "Emarsys" => "emarsys.com/e2t/o/", "Gem" => "zen.sr/o", "Getnotify" => "email81.com/case", "GetResponse" => "getresponse.com/open.html", "GrowthDot" => "growthdot.com/api/mail-tracking", "FreshMail" => //o/(\w){10,}/(\w){10,}/, "Front" => /app.frontapp.com/(.)?/seen/, "Hubspot" => /t.(hubspotemail|hubspotfree|signaux|senal|sidekickopen|sigopn)/, "iContact" => "click.icptrack.com/icp", "Intercom" => [ "via.intercom.io/o", "intercom-mail.com/via/o" ], "Litmus" => "emltrk.com", "Mailchimp" => "list-manage.com/track", "Mailgun" => /email.(mailgun|mg)(.)?/o/, "Mailjet" => "mjt.lu/oo", "Mailspring" => "getmailspring.com/open", "MailTrack" => [ "mailtrack.io/trace", "mltrk.io/pixel" ], "Mandrill" => "mandrillapp.com/track", "Marketo" => "resources.marketo.com/trk", "MixMax" => /(email|track).mixmax.com/, "Mixpanel" => "api.mixpanel.com/track", "NetHunt" => /nethunt.co(.)?/pixel.gif/, "Newton" => "tr.cloudmagic.com", "Outreach" => "api/mailings/opened", "phpList" => "phplist.com/lists/ut.php", "Polymail" => "polymail.io", "Postmark" => "pstmrk.it/open", "Return Path" => "returnpath.net/pixel.gif", "Sailthru" => "sailthru.com/trk", "Salesforce" => "nova.collect.igodigital.com", "SendGrid" => "wf/open?upn", "Sendy" => "/sendy/t/", "Streak" => "mailfoogae.appspot.com", "Superhuman" => "r.superhuman.com", "Thunderhead" => "na5.thunderhead.com", "Tinyletter" => /tinyletterapp.com.*?open.gif/, "YAMM" => "yamm-track.appspot", "Yesware" => "t.yesware.com", "Zendesk Sell" => "futuresimple.com/api/v1/sprite.png" }.collect { |service, pattern| EmailServicePixel.new(service, pattern) }

specialized_blockers = [ LitmusCssPixelBlocker.new, GmassPixelBlocker.new ]

Need to make sure GenericSmallPixel is always the last one on the list. Otherwise, it could catch pixels for some

of the services we're explicitly tracking.

TRACKING_BLOCKERS = email_service_blockers + specialized_blockers + [ GenericSmallPixel.new ] end