Skip to content
This repository

Stream plugin for WordPress


Banner Stream tracks logged-in user activity so you can monitor every change made on your WordPress site in beautifully organized detail.

Contributors: x-team, shadyvb, fjarrett, jonathanbardo, johnregan3, akeda, kucrut, topher1kenobe, powelski
Tags: actions, activity, admin, analytics, dashboard, log, notification, stream, users
Requires at least: 3.7
Tested up to: 3.8.1
Stable tag: trunk (master)
License: GPLv2 or later


Play video on YouTube

Note: This plugin requires PHP 5.3 or higher to be activated.

Never be in the dark about WP Admin activity again. Stream allows you to know exactly when changes to your site have been made, and more importantly, who did them.

Every logged-in user action is logged in a user activity stream and organized for easy filtering by connector, context, action and IP address.

Built with performance in mind, Stream won't pollute your default posts table with records or slow down content querying on your site.

Stream is built to extend, allowing developers to easily build their own connectors to track any type of action in the activity stream (developer documentation coming soon).

Recorded activity:

  • Posts
  • Pages
  • Custom Post Types
  • Users
  • Themes
  • Plugins
  • Tags
  • Categories
  • Custom Taxonomies
  • Settings
  • Custom Backgrounds
  • Custom Headers
  • Menus
  • Media Library
  • Widgets
  • Comments
  • WordPress Core Updates

Noteworthy features:

  • Dashboard widget of most recent user activity
  • Limit who can view user activity records by user role
  • UI to exclude specific types of user activity from being tracked
  • Live update of user activity records in the Stream
  • Private RSS and JSON feeds of user activity records
  • Set how long records should live before being purged automatically
  • Option to manually purge all user activity records from the database
  • Disable connectors where you don't want user activity tracked
  • Support for IPv6 addresses


  • English
  • French (France)
  • German
  • Indonesian
  • Polish
  • Portuguese (Brazil)
  • Spanish (Spain)

Coming soon:

  • Limit who can view user activity records by user, not just by role
  • Multisite view of all activity records on a network
  • Language support for Arabic (RTL), Czech and Slovak

See room for improvement?

Great! There are several ways you can get involved to help make Stream better:

  1. Report Bugs: If you find a bug, error or other problem, please report it! You can do this by creating a new topic in the plugin forum. Once a developer can verify the bug by reproducing it, they will create an official bug report in GitHub where the bug will be worked on.
  2. Suggest New Features: Have an awesome idea? Please share it! Simply create a new topic in the plugin forum to express your thoughts on why the feature should be included and get a discussion going around your idea.
  3. Issue Pull Requests: If you're a developer, the easiest way to get involved is to help out on issues already reported in GitHub. Be sure to check out the contributing guide for developers.

Thank you for wanting to make Stream better for everyone! We salute you.

Build Status


Every logged-in user action is logged in the activity stream and organized for easy filtering and searching.

Every logged-in user action is logged in the activity stream and organized for easy filtering and searching.

Enable live updates in Screen Options to watch your site activity flow into the Stream in real-time.

Enable live updates in Screen Options to watch your site activity flow into the Stream in real-time.

Control which user roles have their activity tracked and which user roles can access Stream.

Control which user roles have their activity tracked and which user roles can access Stream.

Enable private feed access for your activity Stream, determine how long records should live before being purged, or purge them from the database manually at any time.

Enable private feed access for your activity Stream, determine how long records should live before being purged, or purge them from the database manually at any time.


1.3.1 - April 3, 2014

  • New: Theme Editor connector for tracking changes made to theme files (#313)
  • New: Additional screen options to show/hide only the filters you care about (#329)
  • New: Visibility option in Exclude settings to hide past records from view (#355)
  • New: Stream Activity dashboard widget now supports live updates (#356)
  • New: Hover authors to reveal a tooltip with helpful user meta (#338)
  • New: Hover roles to reveal a tooltip with the number of authors assigned to that role (#377)
  • Tweak: Future dates now disabled in Start date field datepicker (#334)
  • Tweak: Now showing user Gravatars in Exclude Authors & Roles settings field (#333)
  • Tweak: ID column is now hidden by default in Screen Options (#348)
  • Tweak: Widget updated summary message improvement (8818976)
  • Fix: Autocomplete not working correctly in Exclude IP Addressees settings field (#335)
  • Fix: Reset Stream Database link not clearing everything in all cases (#347)
  • Fix: PHP 5.3.3 compatibility issue with filter constant (#351)
  • Fix: Predefined date range intervals not honoring the site timezone setting (#353)
  • Fix: wpdb::prepare() notice appearing in WordPress 3.9 (#354)
  • Fix: Invalid argument warning thrown on fresh installations of WordPress (#358)
  • Fix: Record TTL purge not functioning correctly (#371)
  • Fix: Small CSS bug in jQuery UI datepicker skins (04c80af)

Props powelski, fjarrett, jonathanbardo, faishal, desaiuditd, lukecarbis, johnregan3, Powdered-Toast-Man

1.3.0 - March 12, 2014

  • New: Exclude tab in Settings to prevent specific types of activity from being tracked (#251)
  • New: Now logging Custom Background and Custom Header changes (#309)
  • New: Predefined date intervals now available when filtering records (#320)
  • Tweak: Action links are now available for Stream Settings records (#305)
  • Tweak: User avatars now displayed in Authors dropdown filter (#311)
  • Tweak: Live updates are enabled by default for new installs (#312)
  • Fix: Fallback to the term slug if a label does not exist in list-table (#214)
  • Fix: Widget sorting is now being tracked properly as well as Inactive widgets (#283)
  • Fix: Superfluous auto-draft posts are now prevented from being logged (#293)

Props powelski, faishal, fjarrett, desaiuditd, lukecarbis, shadyvb

1.2.9 - March 8, 2014

Fixes bug that caused media uploads to fail on new posts. Props fjarrett

1.2.8 - March 7, 2014

Use attachment type as context in Media connector. Bug fixes. Props lukecarbis, powelski, fjarrett

1.2.7 - March 4, 2014

Pagination added to Stream Activity dashboard widget. Bug fixes. Props chacha, fjarrett

1.2.6 - February 28, 2014

Improved context names in Users connector. Props powelski

1.2.5 - February 27, 2014

Use sidebar area names as context in Widgets connector. Bug fixes. Props desaiuditd, shadyvb, fjarrett, bordoni

1.2.4 - February 25, 2014

Use post type names as context in Comments connector. German translation update. Bug fixes. Props powelski, kucrut, pascalklaeres, shadyvb, fjarrett

1.2.3 - February 21, 2014

Replacement function for filter_input family to avoid PHP bug. Filter added to main Stream query. Bug fixes. Props shadyvb, powelski, fjarrett

1.2.2 - February 19, 2014

Prevent records of disabled connectors from appearing in the Stream. Bug fixes. Props kucrut, johnregan3

1.2.1 - February 17, 2014

Translation updates. Langage packs for pt_BR and id_ID. Bug fixes. Props kucrut, shadyvb, bordoni, powelski, omniwired, fjarrett

1.2.0 - February 12, 2014

Awesome datepicker styles. Performance optimizations. Bug fixes. Props johnregan3, shadyvb, fjarrett, jonathanbardo

1.1.9 - February 10, 2014

Load authors filter using AJAX if there are more than 50. Props powelski

1.1.8 - February 9, 2014

Bug fixes. Props shadyvb

1.1.7 - February 6, 2014

Upgrade routine for IPv6 support. Persist tab selection after saving Stream Settings. Props shadyvb, dero

1.1.6 - February 6, 2014

Sortable columns bug fix on the records screen. Props powelski, fjarrett

1.1.5 - February 5, 2014

Fixed a class scope bug reported in the support forum that was causing a fatal error on some installs. Props shadyvb

1.1.4 - February 5, 2014

Highlight changed settings field feature. DB upgrade routine for proper utf-8 charset. Various bug fixes. Props powelski, johnregan3, shadyvb, fjarrett

1.1.3 - February 4, 2014

Upgrade routine for IP column in DB. Serialized option parsing for Stream Settings records. Purge records immediately when TTL is set backwards in Stream Settings. Various bug fixes. Props shadyvb, powelski, fjarrett

1.1.2 - February 2, 2014

Bug fix for list table notice on new installations. Props shadyvb

1.1.0 - January 31, 2014

Disable terms in dropdown filters for which records do not exist. Props johnregan3

1.0.9 - January 31, 2014

Several important bug fixes. Props shadyvb

1.0.8 - January 30, 2014

Bug fix for sites using BuddyPress. Props johnregan3

1.0.7 - January 29, 2014

Code efficiency improvements when fetching admin area URLs. Props fjarrett

1.0.6 - January 28, 2014

Query improvements, default connector interface, hook added for general settings fields. Bug fixes. Props dero, jonathanbardo, shadyvb, fjarrett

1.0.5 - January 27, 2014

Bug fix for live updates breaking columns when some are hidden via Screen Options. Props johnregan3

1.0.4 - January 23, 2014

Language pack for Polish. Bug fixes. Props powelski, fjarrett, johnregan3, kucrut

1.0.3 - January 19, 2014

Language pack for Spanish. Bug fixes. Props omniwired, shadyvb

1.0.2 - January 15, 2014

Ensure the dashboard widget repects the Role Access setting. Props fjarrett

1.0.1 - January 15, 2014

Require nonce for generating a new user feed key. Props johnregan3

1.0.0 - January 13, 2014

Allow list table to be exensible. Hook added to prevent tables from being created, if desired. Props johnregan3, fjarrett, jonathanbardo

0.9.9 - January 8, 2014

Updated screenshot assets and descriptions. Props fjarrett

0.9.8 - January 1, 2014

Support for live updates in the Stream. Bug fixes. Props jonathanbardo, johnregan3, fjarrett

0.9.7 - December 29, 2013

Plugin version available as a constant. Bug fixes. Props jonathanbardo, fjarrett

0.9.6 - December 29, 2013

Use menu name as context in Menus connector. Warning if required DB tables are missing. Bug fixes. Props jonathanbardo, fjarrett, topher1kenobe

0.9.5 - December 22, 2013

WordPress context added to Installer connector for core updates. Props shadyvb

0.9.3 - December 22, 2013

Replacing Chosen library with Select2. Bug fixes. Props kucrut, shadyvb, fjarrett

0.9.2 - December 22, 2013

Added support for private feeds in JSON format. Flush rewrite rules automatically for feeds when enabled/disabled. Bug fixes. Props jonathanbardo, fjarrett

0.9.1 - December 21, 2013

Specify which roles should have their activity logged. Delete all options on uninstall. Bug fixes. Props jonathanbardo, fjarrett

0.9.0 - December 20, 2013

Added connector for Comments. Stream activity dashboard widget. UI enhancements. Bug fixes. Props jonathanbardo, fjarrett, shadyvb, topher1kenobe

0.8.2 - December 19, 2013

Language packs for French and German. Option to uninstall database tables. Bug fixes. Props jonathanbardo, fjarrett, topher1kenobe, pascalklaeres

0.8.1 - December 18, 2013

Setting to enable/disable private feeds functionality. Additional record logged when a user's role is changed. Bug fixes. Props fjarrett, kucrut, topher1kenobe, justinsainton

0.8.0 - December 16, 2013

Ability to query Stream records in a private RSS feed. Bug fixes. Props fjarrett, shadyvb

0.7.3 - December 13, 2013

Bug fix for Role Access option. Props fjarrett

0.7.2 - December 12, 2013

Bug fixes for the Installer connector. Props shadyvb

0.7.1 - December 12, 2013

Hotfix to remove PHP 5.4-only syntax. Role Access option added to Settings. Props kucrut

0.7.0 - December 11, 2013

Added connectors for Taxonomies and Settings. Bug fixes. Props shadyvb, fjarrett

0.6.0 - December 9, 2013

UX improvements to manual DB purge. Cron event for user-defined TTL of records. Bug fixes. Props shadyvb, fjarrett

0.5.0 - December 8, 2013

Require PHP 5.3 to activate plugin. Provide action links for records when applicable. Bug fixes. Props shadyvb, fjarrett

0.4.0 - December 8, 2013

Improved support for pages and custom post types. Chosen for filter dropdowns. Pagination support in screen options. Bug fixes. Props shadyvb, fjarrett

0.3.0 - December 7, 2013

Improved actions for Users context. Action for edited images in Media context. Bug fixes in Menus context. Props shadyvb, fjarrett, akeda

0.2.0 - December 6, 2013

Second iteration build using custom tables data model. First public release. Props shadyvb, fjarrett


Initial concept built using custom post type/taxonomies as the data model. Props shadyvb

Something went wrong with that request. Please try again.