From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Screenshot from WhatPulse 2.3.1
Screenshot from WhatPulse 2.3.1
Developer(s)Martijn Smit
Initial release9 February 2003; 16 years ago (2003-02-09)
Stable release
2.8.3[1] / 15 April 2018; 15 months ago (2018-04-15)
Written inC++
Operating systemMicrosoft Windows
TypeUsage statistics (Key & mouse click counting, bandwidth and uptime measuring)

WhatPulse is a key-counting program that monitors computer uptime, bandwidth usage and the number of keystrokes and mouse clicks made by a user over a period of time. Unlike keyloggers, the authors claim WhatPulse does not record the order in which keys are pressed but instead counts the number of times keys are pressed.[2] As of February 28, 2014, over 160,000+ users are active on WhatPulse.[3]


The software tracks a user's pressed keys, mouse clicks and used bandwidth and the uptime of the system. Periodically, the user can upload to the server the number of keystrokes made; this is called "pulsing". Users can see where they are in a leaderboard of people who have joined the program and compare themselves against people from their own countries. Users can also join teams, which enables them to compare themselves against people with similar interests.

The latest versions of WhatPulse included anti-cheat measures. Automated measures against cheating include a 50 keys per second maximum.[4]

Platform compatibility[edit]

WhatPulse is a freeware cross-platform application, running on Windows, macOS, and Linux.[5] However, the Mac and Linux clients were not always updated as often as the Windows client. This changed in the latest version, 2.0, which became available for all platforms at the same time and aims at letting the client act the same across all platforms.

Version history[edit]

Major versions and notable features for the Windows client are listed below:[6][7]

Version number Changes
1.0 (6 February 2003 (2003-02-06)) Initial release. Pressed keys were counted.
1.1 (12 November 2003 (2003-11-12)) The following features were added:
  • Ability to change password via the client
  • Geek Window, which have always displayed the current statistics
  • Token System, which have blocked cheating by multiple times pulsing the same data (A string had to be matched from the previous pulse)
  • Automatic pulsing after every X keys
1.2 (1 January 2004 (2004-01-01)) Clicks are now counted along with pressed keys.
1.3 (15 May 2004 (2004-05-15)) The client now counts and stores which keys have been pressed, and how many times. (The order of the keys are not stored, not making the program a keylogger)
1.4 (10 September 2004 (2004-09-10))
  • The ability to pulse every X click was added
  • The client now displays the current logged in user
1.5 (19 August 2006 (2006-08-19))
  • The client now tracks mouse distance
  • Pulse Profiles (now Computers) appeared
1.6 (12 March 2009 (2009-03-12))
  • New login window for existing accounts and new users
  • Optimized local database file and its location for newer operating systems and stability
1.7 (10 August 2010 (2010-08-10))
  • Windows 7 support
  • Portable mode, which allows the user to save its data without an internet connection
  • Key frequencies image generator, which makes a keyboard heatmap, and displays it in the user's web browser
2.0 (22 December 2012 (2012-12-22))
  • Dropped mouse distance tracking (because of the different and inaccurate methods to track mouse distance between the supported operating systems)
  • Added Bandwidth tracking, which counts the user's downloaded and uploaded data (using WinPcap)
  • The client now also stores system uptime
2.0.1 (31 December 2012 (2012-12-31))
  • Add some critical keys to keyboard heatmap.
  • Unable to set a proxy when logging in.
  • The heatmaps do not update 'today' after a manual reset.
  • Windows closes input hooks when putting your CPU under load (games), which makes it stop counting keys and clicks.
  • Random crashes when using a wireless network connection.
  • Random crashes when using sleep or hibernation mode.
  • Auto pulsing is disabled too quickly when detecting pulse errors.
  • The client does not see certain USB network adapters.
  • Computer crashes (BSOD) can cause the client to ask for a login, next start up.
  • Only show active metrics in tooltip (icon hover).
  • Allow a password reset without knowing the old password.
  • Several optimisations for speed and memory management.
2.0.4 (1 February 2013 (2013-02-01))
  • Add an option to disable automated pulse notifications
  • Blink tray icon on keyboard or mouse option (plus an option to disable that)
  • Launch Geek Window on startup when it was open upon closing the client
  • Update statistics more often in Geek Window
  • Don't show notifications when a fullscreen application is running
  • Add the ability to auto detect the system proxy server
  • Don't write database queries right away, cache them. (saves disk I/O)
  • Make scheduled backups of databases and fall back on backups when main database file gets corrupted
  • Add total account overview (totals + ranks) to account tab
  • Count uptime more accurately (2.0.1 was about 1% off)
  • Count bandwidth more accurately
  • Count bandwidth from and to a proxy server in unpulsed stats (was excluded in previous clients)
  • Show more accurate network usage on interface overview
  • Don't check for updates or internet IP when "Work Offline" is enabled
  • The 'Year' option in the keyboard + mouse heatmap was not the last 12 months, but the current year
  • Extra precautions for double pulsing

Fixed in Linux

  • Some network interfaces were not detected if certain system files did not exist
  • Optimize application bandwidth measuring (70% less CPU)

Fixed in Windows

  • The client crashed when certain applications were running
  • Enhance input hook usage (i.e. fullscreen applications, busy CPU)
  • Ignore system services for application uptime

Enhancements in Mac OS X

  • Optimize detection of network interfaces (2500% quicker)
  • Optimize detection of running processes (120% quicker)
2.1 (26 April 2013 (2013-04-26))
  • Per application keyboard/mouse statistics
  • WinPcap 4.1.3 for Windows 8 support
  • The login procedure has been simplified to be a breeze. You can add computers from the wizard and it auto detects your computer name.
  • New updater for automatic updates to make updating easier
  • An option to run WhatPulse as Administrator (Windows), to catch input from elevated applications


  • Database backups. This fixes startup crashes and data loss
  • Random client crashes
  • Client not counting input stats after hibernations
  • Linux crash when pf_ring (network) was not available
  • Windows lag every 5 minutes


  • Network monitoring performance (less CPU)
  • Time period selector for per country network stats
  • Windows XP support (input and network stats)
  • Require SSL libraries on Linux, otherwise account settings cannot be saved
  • Linux: Set up network capabilities automatically instead of having to do it manually
  • Log to 'app.log' inside the settings directory so you can see what's going on
2.2 (8 September 2013 (2013-09-08))
  • Added a setting to disable pulsing upon a double click of the tray icon.
  • Mouse heat map now displays in proper screen ratio.
  • The tray icon menu has been changed to be more useful.
  • Allow applications to be ignored for input as well.
  • Allow network traffic measurements without the third-party libraries (WinPcap, libpcap). NOTE: Without these libraries, the client will not pulse network traffic to the website.
  • Windows: Added a crash reporter which will report any issues back to us and notify you of the problem.
  • Apple OS X: Use the built-in notification center, if available.
  • Fixed auto pulsing with keys; it pulsed the current keys, not the set value.
  • Fixed IPv6 network traffic measurements.
  • Fixed keyboard heat map counting of navigation keys (arrows, home, page up, etc.) on some computers.
  • General Interface and Performance optimisations, 2.2 uses less memory/CPU and the interface has a better experience.
  • Improve database backups to be less intrusive (disk I/O) and be a lot faster.
2.2.1 (15 September 2013 (2013-09-15))
  • Using the Crash Reporter, we were able to collect a good deal of information about issues that some people have. Using this information, we've made a lot of (20+) improvements that are related to the stability of the client. Anyone having stability issues is encouraged to update!
  • Windows updater fix ("file not found" error, run updater.exe manually if you have this issue
  • Fix Mac OS X support for 10.7 and lower
  • Fix Mac OS X updater "improperly signed" messages (update manually if you have this issue
  • Hide "Re-upload applications" on Linux (not supported)
2.3 (27 November 2013 (2013-11-27))


  • Added support for dvorak and azerty keyboard layouts
  • OS X Mavericks support


  • A few remaining client random crash situations. All platforms should be stable as a rock now!
  • Allow GeoIP database downloads on computers using a non-standard character set
  • When using an upgraded client, applications were sometimes not properly uploaded to the website.
  • On Windows tilde and apostrophe were sometimes mixed up. On OS X 9, tilde and caps lock were sometimes not counted.
  • OS X: The client sometimes lost the network hook when coming out of sleep, or even crashed.
  • Windows: Sometimes the updater was not launched correctly (“updater.exe not found”)


  • Interface and collection optimizations on memory and CPU, making the client use 40% less memory and be 20% faster.
  • Only used applications are now sent to the website, minimizing clutter in your overviews.
  • Interface updating has been tweaked so that the Geek Window updates are a lot smoother.
  • Ignore dead center clicks in the mouse heat map. Some games lock the cursor in the center, ruining your mouse heat map.
  • “Refresh Status” on the Account tab now also refreshes totals and ranks.
  • When “Pulse on double click” is disabled, open the main window upon double clicks.
2.3.1 (12 December 2013 (2013-12-12))


  • Added colemak keyboard layout


  • Ignore network interface 'Virtual WiFi Miniport' on Windows. WinPcap crashes on those interfaces.


  • Network graph gaps and spikes
  • Fix client crash on sleep when the network statistics are shut down too quickly (happens on fast computers).
2.4 (19 April 2014 (2014-04-19))


  • Export functionalities!
  • Export your keyboard & mouse heat maps
  • Export network bandwidth history per application, interface or originating country
  • Export the uptime of your applications and computer restarts
  • Use the buttons directly on the tabs, or use the advanced (premium) Export Wizard
  • The advanced Export Wizard provides all possible data exports!
  • Add a menu to the tray icon for quickly enabling and disabling statistics
  • Add an option for auto pulsing on every hour
  • Show exactly what your auto pulse settings do for you, in human terms
  • Add window with all the available fun facts, which can be opened by clicking the fact icon or text
  • Mac OS X: Show icon in Dock when the client is open, to make it easier to bring to focus


  • Multiple interface improvements to improve the user experience
  • Multiple performance tweaks; lesser database usage, more caching
  • Add a network counter monitor for Windows which catches network monitor time outs (on system sleep/hibernation) and restarts networking counting
  • Change tray icon to alert when the client is not logged in
  • Document command line options in a --help menu
  • Add command line option to disable network statistics from startup
  • Don't restart networking on OS X on sleep/wake up and have the network monitor fix network counting. May be related to some OS X crashes when waking the system up.
  • Show release notes of all clients from current version to latest version for a full overview of changes when skipping versions.


  • Properly colour a key inside the keyboard heat map when it is 0. Sometimes turned out red, previously.
  • Fix rendering of the hours on the application uptime activity graph
  • Fix displaying day changes in application uptime activity graph.
  • Check the downloaded GeoIP.dat for corruption and don't load it if it is corrupted
  • Detect date changes when the interface is open, so that 'today', 'yesterday', etc. display the correct data when the day changes
  • Network stats could cause the client to crash upon exiting, under heavy network load
  • Properly calculate Current/Average/Maximum values on Realtime bandwidth tab
2.4.1 (28 September 2014 (2014-09-28))


  • Geek Window: Add realtime keys, clicks, download and upload per second variables called "Rates"
  • Add support for Windows 8.1, Windows 2012R2 and OS X Yosemite (10.10)
  • OS X: Client is now signed with a proper certificate


  • The Facebook login experience has been greatly enhanced
  • The Qt framework has been upgraded to Qt5 (from Qt4) and we've sent it to the gym. The Windows is now only 22MB (42% smaller) and the Mac client is now 34MB (45% smaller)
  • Reduce memory usage greatly on some computers where it used much memory
  • Database size: Delete mouse points older than 3 months from the heat map to save space and memory usage (option to keep them). This reduces the size of an average database with 80% and improves client performance
  • Improved communication flow to prevent wrong tokens when internet connectivity is unreliable


  • Windows: Fixed some cases where 'zombie' client processes can happen (client was running but not showing)
  • Fix issues where client does not start on Windows startup in some cases
  • Fix Geek Window transparency glitch when saving new layout and make modifying Geek Window layout more smooth
  • OS X: Fix recognition of AMD processors on Hackintosh computers
  • Replace fact variables with 'no data' when there's no data instead of showing the variables names themselves
2.5 (9 December 2014 (2014-12-09))[8]


  • The client now differentiates between mouse buttons and a presentation of these stats has been added.
  • You can now ignore specific network interfaces for network monitoring.


  • The client will no longer reset the local database when logging out, so local stats can be kept through a re-login.
  • OS X: Detect black theme and auto adjust black W icon to a white W icon.


  • OS X: Fix computer model and architecture detection on Yosemite.
  • Linux: Fix text color when using black themes.


  1. ^ http://whatpulse.org/releasenotes/2.8.3/
  2. ^ "Does WhatPulse contain any spyware?". WhatPulse.
  3. ^ "Signup Statistics". WhatPulse. Retrieved 15 December 2013.
  4. ^ "What does "Activity Breached" mean?". WhatPulse Wiki. Archived from the original on 14 March 2012. Retrieved 25 July 2013.
  5. ^ "Downloads". WhatPulse.
  6. ^ "News posts". WhatPulse. Archived from the original on 30 November 2010. Retrieved 25 July 2013.
  7. ^ Smit, Martijn (22 December 2012). "WhatPulse 2.0!". WhatPulse. Retrieved 25 July 2013.
  8. ^ "WhatPulse 2.5". WhatPulse.

External links[edit]