369 Modules match your search

Extend and customize Drupal functionality with contributed modules. If a module doesn't quite do what you want it to do, if you find a bug or have a suggestion, then join forces and help the module maintainer. Or, share your own by starting a new module.


The Postmark module allows the administrator to switch the standard SMTP library over to use the third party Postmark API to send out emails from their site. An account with Postmark is required to use this module.


On April 5, 2013, version 0.5 of the Postmark PHP library was released. Currently only the 7.x-1.x-dev version of Postmark supports the 0.5 library. If you download the 7.x-1.2 release of Postmark, use the 0.4.5 library available here:


The upcoming 7.x-1.3 release of Postmark will include support for the 0.5 library.

Also note that Libraries module 2.0 or higher is required for Postmark 7.x-1.2 and higher releases.

Users of the Drupal 6 version of the Postmark module can ignore this notice since the 0.4.5 release of Postmark PHP is bundled into the Drupal 6 module folder.


Module development is sponsored by SiteBasin (http://sitebasin.com). The Drupal 6 version of the module was sponsored by Deeson Online (http://www.deeson.co.uk/online).

If you have any requests or problems using the module, please submit an issue in the Postmark queue (http://drupal.org/project/issues/postmark).

Sender Signature Requirement



Adds the Hotjar tracking system to your website.



Baidu Analytics

Logo of the Baidu Analytics web statistics online tracking service.

Adds the Baidu Analytics web statistics tracking system to your website.
Baidu Analytics (百度统计 Baidu Tongji, in Chinese) is Baidu search engine's web analytics platform.

It provides users with many reports about visitors to their website, such as a report on the source of visitors, user demographics, reports on content viewed on site, a heat map, and many other features.


The module allows you to add the following statistics features to your site:

  • Selectively track/exclude certain users, roles and pages
  • Monitor what type of links are tracked (downloads, outgoing and mailto)
  • Monitor what files are downloaded from your pages
  • Custom variables support with tokens
  • Custom code snippets
  • Site Search support
  • DoNotTrack support (non-cached content only)
  • Drupal messages tracking
  • Modal dialog tracking (Colorbox)
  • Access denied (403) and Page not found (404) tracking
  • Cache the Baidu Analytics code on your local server for improved page loading times



User Visits Advanced

The User Visits Advanced module is a contrib module for the User Visits module. It is extremely useful for social networking sites who wish to provide their users with statistics about the number of times a the users profile page is being viewed and by which other users. See the provided screen shot how the block of this module can look like.

This module comes with its own database table to store statistics per user profile (uid). At cron time, the data from the user_visits table is collected, aggregated and stored in the user_visits_adv table. It stores

  • the total number of visits per uid
  • the number of visits of the X past days per uid
  • the most recent visitors uids of the past Y hours


  • Enable the user_visits_adv module
  • Go to admin/user/user_visits and the advanced fieldset
  • You can choose to enable the two blocks: My recent visitors adv & My visitors history adv
  • Configure each block for the amount of data which should be handed over to the theming functions


The My visitors history adv block can be themed by overriding the following function
* Theme function for history block
* @param $history is array with the views data of the past X days.


FileField Track

A simple module that tracks downloads of files added through CCK/Fields by asking anonymous users to enter their email address. Returning anonymous users are tracked using a cookie. A tracking interface shows email address and user account information for tracked files downloaded on the site.

Why only have users enter their email address? Email addresses are a unique and easy way to identify users, and the barrier for entry is lower than actually registering for the site.

Set up is easy:



This project will be work on a new Analytics module to possibly replace Drupal core's Statistics module. It will provide simple built-in JavaScript tracking and tracking inclusion/exclusion by page, user roles, and specific users. It will also be pluggible so you can use the same tracking settings across alternative analytics services/sub-modules like Google Analytics.


Yandex Webmaster

Yandex Webmaster module integrates the Yandex Webmaster tools with your Drupal site via Yandex.Webmaster API.




  • Download and unpack the IDNA Converter PHP class into sites/all/libraries/idna_convert so that the path to the idna_convert.class.php file is sites/all/libraries/idna_convert/idna_convert.class.php
  • Download and install Yandex Services Authorization API
  • Download and install this module



Graph from the Mixpanel dashboard

Provides integration with the Mixpanel real-time analytics service.

Unlike Google Analytics, Mixpanel isn't for tracking aggregate data about page views. Instead, you send specific events to Mixpanel when users perform certain actions. This allows you to examine how users interact with your site in real-time and connects all events to the individual user who performed them (so you can contact them).

Mixpanel is great for finding ways to improve usability, studying how existing features are actually used and is especially good for startups who are trying to refine their MVP (Minimum Viable Product).

Click here to learn more about Mixpanel!

#D8CX: I pledge that Mixpanel will have a full Drupal 8 release on the day that Drupal 8 is released.

Support Mixpanel's development by donating on TopShelfModules.com!


  1. Install this module in the normal Drupal way
  2. Sign-up for a free account on Mixpanel.com
  3. Obtain your Mixpanel token



jStats allows you to aggregate statistics about visitors on your site, without breaking the cache-ability of your pages.

At its core, jStats could be seen as a bridge between the core Statistics module, that stores its data in Drupal but is incompatible with aggressive and external caching, and Google Analytics, that only adds a small JS fragment to the page and thus makes them perfectly cachable, but can't easily be accessed by Drupal modules (in order for example to sort a listing of node by the number of node views): it's a lightweight way to keep your statistic data in your database, that still works when the page you want to have statistics on is stored in cache.


Mail Tracking

Mail Tracking statistics

The Mail Tracking module tracks the number of recipients that read your e-mail message, click on a link in it or unsubscribe (if used in combination with Simplenews).

And there's even more: if the Simplenews and Google Analytics module have been installed you can define a source for your newsletters. This source (and some other values) will be added as utm_ parameters to all website links in your newsletter.



Tealium: Enterprise Tag Management

The Tealium module for Drupal aims to provide an easy to manage interface and API for enabling Tealium enterprise tag management on Drupal powered web sites.

Development sponsored by Intrepid Group.


Once enabled and configured, the Tealium module for Drupal will add a Tealium Universal Tag to your content pages, so you can begin managing your third-party marketing and analytics tags through the Tealium iQ Management Console. The Tealium Drupal module's API allows you to easily send data about content being displayed from Drupal to Tealium using the Tealium Universal Data Objectutag_data.


Word count

View word counts stats for each user: total words, total nodes, total comments, average words per node, etc.

Version 7.x-1.1 is out. It includes some very important bug fixes [release notes]. Please upgrade ASAP.


Time Spent


This module tracks, by Ajax, how long a registered user took to read a page and the amount of time he spent on the entire site.

You can configure which content type and role should be tracked and view the report, exhibiting the total hours (or minutes/seconds) a user spent reading a page and at the entire site.

This module just track node pages and registered users. Taxonomy or views pages aren't tracked, but can be if the code is edited.
If you need to track anonymous visits, consider using Google Analytics (GA can't track registered users by its privacy terms).


Notify 404

Notify 404 provides the ability for notification emails to be sent to a user when a specific volume / frequency of 404 (page not found) errors have occurred on the website. This module allows for configurable email settings and volume / frequency settings. It also provides help via pointing the user to the Redirect Module to fix the issue.

Required Modules:


Click HeatMap

ClickHeat generated heatmap.

The Click Heatmap module provides integration between Drupal and the ClickHeat library. The module itself does not record any data or generate click heatmaps. Instead the module provides a limited Drupal related scope and injects the the Javascript necessary to record the click data.


Syslog Access

Syslog Access compliments the core Syslog module by routing access statistics and logs to syslog (in addition to Syslog's routing of Watchdog), allowing you to use your favorite log management software or service (like Splunk, Loggly, etc.) to visualize, analyze, and manage your access log.

You can also disable database logging to help scale your Drupal installation.



Statistics AJAX

Statistics_ajax in action


This module provides a way to programmatically update the {node_counter} table (provided by the core statistics module).

This module listens to a URL in the format of /statistics/ajax/[nid] where [nid] is the id of the node you are looking to update the statistics for.


Uptolike share buttons


English version below

Russian version


Интеграция социальных кнопок от uptolike.ru.



LiveInternet module admin interface

English version

The LiveInternet module integrates Drupal with LiveInternet statistic service, which most popular in Russia and post-Soviet states. This service allows to track visitors, page views, referring sites, the most popular pages, etc. The image with LiveInternet logotype have to be on every tracking page in free version of counter.




Adds support for the Woopra web statistics and real-time tracking system.

This modules includes support for:

  • selective tracking of users based on their role
  • local caching of the tracking code
  • explicit tracking on their username
  • display users' avatars and email addresses (optional) in Woopra

https is now supported by woopra and this module.


Stop Spam

The module provides some tricks to stop sending spam on your website.


MySQL Report

One of the standard tools used by DBAs for tuning MySQL databases is mysqlreport, a cool script written in Perl. Unfortunately I've got a number of clients that either can't or don't want to keep Perl around and up to date so I've ported mysqlreport into a Drupal module since all my clients have PHP.

At the moment all this does is to simply display the MySQL report, I'll eventually get around to hooking up help and other features as I need them (or other folks want them).


Filefield Stats

FileField Stats is a small module which provides a new formatter that outputs a special link for tracking downloads.

Each download tracks the File ID, User ID, Node ID, Host IP & Referrer URI and a timestamp.

The formatter will produce a URL like this:




ClickTale is used to collect user experience analytic data, which can be used to enhance the users experience of the site. ClickTale records videos of the users movement on the site based on the users mouse movements. ClickTale also generates heatmaps based on where the user clicks and hover their mouse on the pages.

To use the module you need to have a Clicktale account, which you can get at http://www.clicktale.com/.