From mediawiki.org
MediaWiki extensions manual
Article Feedback v5
Release status: stable
Implementation Special page
Description Encourage users to contribute by allowing them to verbally assess an article.
Latest version 5.6.0 (2020-07-13)
MediaWiki 1.35+
Database changes Yes
Composer mediawiki/article-feedbackv5
Tables aft_feedback
License GNU General Public License 2.0 or later
Example Brickipedia
  • $wgArticleFeedbackv5DefaultSorts
  • $wgArticleFeedbackv5BackendClass
  • $wgArticleFeedbackv5Debug
  • $wgArticleFeedbackv5HideAbuseThreshold
  • $wgArticleFeedbackv5Watchlist
  • $wgArticleFeedbackv5AutoArchiveEnabled
  • $wgArticleFeedbackv5RatingLifetime
  • $wgArticleFeedbackv5AbuseFiltering
  • $wgArticleFeedbackv5LinkBuckets
  • $wgArticleFeedbackv5CTABuckets
  • $wgArticleFeedbackv5TalkPageLink
  • $wgArticleFeedbackv5OversightEmailName
  • $wgArticleFeedbackv5AbusiveThreshold
  • $wgArticleFeedbackv5ArticlePageLink
  • $wgArticleFeedbackv5OversightEmailHelp
  • $wgArticleFeedbackv5BlacklistCategories
  • $wgArticleFeedbackv5Categories
  • $wgArticleFeedbackv5MaxActivityNoteLength
  • $wgArticleFeedbackv5OversightEmails
  • $wgArticleFeedbackv5MaxCommentLength
  • $wgArticleFeedbackv5LotteryOdds
  • $wgArticleFeedbackv5SurveyUrls
  • $wgArticleFeedbackv5EnableProtection
  • $wgArticleFeedbackv5Permissions
  • $wgArticleFeedbackv5ThrottleThresholdPostsPerHour
  • $wgArticleFeedbackv5DisplayBuckets
  • $wgArticleFeedbackv5WatchlistLink
  • $wgArticleFeedbackv5AbuseFilterGroup
  • $wgArticleFeedbackv5LearnToEdit
  • $wgArticleFeedbackv5Cluster
  • $wgArticleFeedbackv5AutoHelp
  • $wgArticleFeedbackv5SpecialPageSurveyUrl
  • $wgArticleFeedbackv5AutoArchiveTtl
  • $wgArticleFeedbackv5DefaultFilters
  • $wgArticleFeedbackv5RelevanceScoring
Quarterly downloads 35 (Ranked 126th)
Translate the ArticleFeedbackv5 extension if it is available at translatewiki.net
Issues Open tasks · Report a bug
See Article feedback/Version 5 for more information.

The Article Feedback extension (aka Article Feedback Tool, Version 5) was a Wikimedia Foundation project designed to engage Wikimedia readers in the assessment of article quality, one of the five priorities defined in the strategic plan. It was given to Brickimedia after a Brickimedia system administrator, Jack Phoenix, opened up T144677 for a request for +2 rights.

Reusers of the extension should be aware of task T56197 and task T60956.


The extension can be retrieved directly from Git [?]:

  • Browse code
  • Some extensions have tags for stable releases.
  • Each branch is associated with a past MediaWiki release. There is also a "master" branch containing the latest alpha version (might require an alpha version of MediaWiki).

Extract the snapshot and place it in the extensions/ArticleFeedbackv5/ directory of your MediaWiki installation.

If you are familiar with Git and have shell access to your server, you can also obtain the extension as follows:

cd extensions/ git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/ArticleFeedbackv5.git


  • Download and place the file(s) in a directory called ArticleFeedbackv5 in your extensions/ folder.
  • Add the following code at the bottom of your LocalSettings.php file:
    wfLoadExtension( 'ArticleFeedbackv5' );
  • Run the update script which will automatically create the necessary database tables that this extension needs.
  • Yes Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.
  • If your wiki has a lot of traffic, Extension:AbuseFilter is recommended, to manage abusive feedback.



An array of category titles (using '_'s instead of spaces). Pages in any of these categories will have the rating widget shown (regardless of the $wgArticleFeedbackv5LotteryOdds described elsewhere). If empty (the default), the extension is effectively disabled. e.g.:

$wgArticleFeedbackv5Categories = array( 'Foo_bar', 'Baz' );


Which categories the pages must not belong to have the widget added (with _ in text). e.g.:

$wgArticleFeedbackv5BlacklistCategories = array( 'Baz' );


Only enable the widget in these namespaces (regardless of the category of the page). Defaults to $wgContentNamespaces (defaults to array( NS_MAIN ) ). e.g.:

$wgArticleFeedbackv5Namespaces = array( NS_MAIN, NS_HELP, NS_PROJECT );


Percentage of article AFT should be enabled on. Note that even when a lottery is set for a certain namespace, AFT will not show up unless that namespace is also added to $wgArticleFeedbackv5Namespaces. This can be set either as integer as a site-wide percentage, or as a key-value array for a per-namespace percentage. e.g.:

// enable site-wide on 100% on all namespaces defined in $wgArticleFeedbackv5Namespaces
$wgArticleFeedbackv5LotteryOdds = 100;

// enable 100% on main namespace & 50% on help namespace (assuming both are also defined in $wgArticleFeedbackv5Namespaces)
$wgArticleFeedbackv5LotteryOdds = array( NS_MAIN => 100, NS_HELP => 50 );

Technical: all articles with an ID ending on (1000 - (odds * 10)) and above, will get AFT enabled. E.g. when setting odds at 15%, all articles whose ID ends in 850-999 will have AFT enabled.


Defines whether or not there should be a link to the corresponding feedback on the page's talk page. e.g.:

$wgArticleFeedbackv5TalkPageLink = true;


Defines whether or not there should be a link to the watchlisted feedback on the watchlist page. e.g.:

$wgArticleFeedbackv5WatchlistLink = true;

Note: the watchlist feature does not scale well. You may want to disable this feature on large wikis.


This defines which form should be displayed and at what percentage. Note that support for some forms (2, 3, 5) has been discontinued completely, as they no longer fit the technical architecture the rest was built upon.

$wgArticleFeedbackv5DisplayBuckets = array(
	'buckets' => array(
		'0' => 0, // display nothing
		'1' => 0, // display 1-step feedback form
//		'2' => 0, // abandoned
//		'3' => 0, // abandoned
		'4' => 0, // display encouragement to edit page
//		'5' => 0, // abandoned
		'6' => 100, // display 2-step feedback form
	'version' => 6,
	'expires' => 30,


This defines which links should be displayed and at what percentage.

$wgArticleFeedbackv5LinkBuckets = array(
	'buckets' => array(
		'X' => 100,
		'A' => 0,
		'B' => 0,
		'C' => 0,
		'D' => 0,
		'E' => 0,
		'F' => 0,
		'G' => 0,
		'H' => 0,
	'version' => 5,
	'expires' => 30,


This defines which CTAs should be displayed and at what percentage.

$wgArticleFeedbackv5CTABuckets = array(
	'buckets' => array(
		'0' => 0, // display nothing
		'1' => 40, // display "Enticement to edit"
		'2' => 10, // display "Learn more"
		'3' => 0, // display "Take a survey"
		'4' => 20, // display "Sign up or login"
		'5' => 20, // display "View feedback"
		'6' => 10, // display "Visit Teahouse"
	'version' => 4,
	'expires' => 0,


Restrict comment length to an arbitrary number of characters. Defaults to zero for no check. e.g.:

$wgArticleFeedbackv5MaxCommentLength = 400;


AFTv5 introduces a new set of permissions to define users' access roles. These are mapped to the following already existing groups by default, so make sure these are configured on your setup (or bind the AFT-permissions to the appropriate groups in your setup):

  • aft-reader: *, user, confirmed, autoconfirmed, rollbacker, reviewer, sysop, oversight
  • aft-member: user, confirmed, autoconfirmed, rollbacker, reviewer, sysop, oversight
  • aft-editor: confirmed, autoconfirmed, rollbacker, reviewer, sysop, oversight
  • aft-monitor: rollbacker, reviewer, sysop, oversight
  • aft-administrator: sysop, oversight
  • aft-oversighter: oversight


Software bugs can feature requests can be submitted via Wikimedia's Phabricator.

See also[edit]