Open main menu

Help:Archiving a talk page

It is customary to periodically archive old discussions on a talk page when that page becomes too large. Bulky talk pages may be hard to navigate, contain obsolete discussion, or become a burden for users with slow Internet connections or computers. Notices are placed at the beginning of the talk page to inform all editors of an archive.

Regular articles are not archived because previous versions may be seen in the page history; the practice of archiving is particular to talk pages and noticeboards, which often swell to great length. Archiving one's own user talk page is optional; some users simply blank the page, as the history is kept available for future reference, but this is not considered the best practice (as it makes things more difficult to find and link). For this specific case, the use of "permalinks" can provide an easy way to display an archived view of a talk page at a given moment, though there's no control on thread organization or presentation.

The talk page guidelines suggest archiving when the talk page exceeds 75 KB (or 75,000 bytes), or has multiple resolved or stale discussions. However, when to archive, and what may be the optimal length for a talk page, are subjective decisions that should be adapted to each case. For example, ongoing discussions and nearby sections they reference should generally be kept intact.

There may be circumstances where it would be useful to keep older discussions present on a talk page, to avoid the same issues being repeatedly raised. However, this situation can be better addressed by use of the {{FAQ}} template.

Technical overview

The preferred method for archiving a talk page is to copy the older content to a series of subpages. This can be performed either by hand or automatically by a bot.

There are two common methods of naming archive pages. The most common, and easiest, is sequentially numbered archives. Archive pages should be named as follows: take the name of the talk page, and add "/Archive #", where "#" is the number of the archive. Note that the word Archive has a capital A, there is a space before the number, and there are no leading zeros. Templates like {{Archive list}} rely on this naming convention to automatically find the archive pages.

For example:

  • The 20th archive of Talk:Earth would be named Talk:Earth/Archive 20
  • The first archive of User talk:Example would be named User talk:Example/Archive 1

The second common method of naming archive pages is by year and month. With this method archive pages are typically named Talk:YourPage/Archives/2013/June, Talk:YourPage/Archives/2013/July, etc. Some things are more complex with this method of naming. When using this naming scheme the subpages should use /Archives/ not /Archive/ as some of the navigation templates rely on Archives being plural.

Remember to use the correct namespace – the part before the colon (:) – when archiving your own user talk page. It should start with "User talk:", not "Talk:".

Manual archiving

  1. Edit the talk page, copying material you wish to archive to your computer's clipboard.
  2. Create a new archive page at Talk:Example page/Archive N, where N is the lowest number for which no archive exists. (You can create the page by searching for the desired title and clicking the red link in the search results, or by editing the URL bar to point to the desired location then clicking the "Create" button.)
    • Alternatively, you may occasionally wish to create a topical archive, in which case the archive should be named according to the topic. For example Talk:Example page/Place of birth debate.
  3. Paste the clipboard contents into this archive and add {{Talk archive}} to the top of the code. Publish the new archive.
  4. Delete copied material from main talk page with edit summary mentioning the name of the new archive.
  5. If an archive box doesn't already exist on the main talk page, add the line {{Archives}} below the WikiProject tags and publish. (This will not be necessary if the main talk page already contains the line {{Talk header}}, since this template automatically contains a list of archives).

For a more detailed, beginner-oriented set of instructions, see here.

Semi-automated procedure

Archy McArchface is a userscript designed to simplify the above manual procedure. Instead of manually copying and pasting the text, this script allows you to simply check which sections you wish to archive and specify a page to archive the selected sections to.

Automated archiving

ClueBot III and lowercase sigmabot III can automatically create archives for any discussion page (one that has "talk" in the namespace), by moving sections to a subpage when the section has received no comments for a specified period of time. Both bots can archive sections into simple sequentially numbered archives (e.g. YourPage/Archive 1, YourPage/Archive 2, ...), or archive according to date (e.g. YourPage/Archives/2013/June, YourPage/Archives/2013/July, ...).

See the lowercase sigmabot III page and the ClueBot III page for detailed instructions on setting up these bots. Those pages explain each of the parameters used, such as archiveheader, minthreadsleft, etc. The examples below are also available for use. All of the examples here are intended for you to be able to copy them while viewing this page and paste them into the edit box on your target page without requiring any modification to have a working configuration.

Note: Make sure to establish consensus before setting up lowercase sigmabot III or ClueBot III on a talk page other than your user talk page.

Choosing a bot. Table comparing the 2 main bots

ClueBot III and lowercase sigmabot III, the two bots in current use for automated archiving, are similar in their behaviour, but have some differences in terms of features they implement and limitations on their use:

ClueBot III lowercase sigmabot III
Number of talk pages in use on. 8,000 26,000
Index of archives? Yes requires additional bot
Automatically repair links to discussions when archiving? Yes (example) No
Initial delay before first archive Up to several days (example) Less than 24 hours (typically begins runs at 00:00 UTC daily)
Limitations Not suitable for pages linked to by a huge number of other pages (for performance reasons) Will not archive sections without signatures

Sequentially numbered archives

Example configurations to set up automatic archiving of an article talk page or user talk page (you can add one of the following near the top of the page):

In general, you should include {{Archives|bot=bot name}} (to provide a search box) along with the content of one the following columns (starting with {{ and ending with }}).

Sequentially numbered archives
lowercase sigmabot III ClueBot III
{{User:MiszaBot/config
| algo=old(90d)
| archive={{SUBST:FULLPAGENAME}}/Archive %(counter)d
| maxarchivesize=75K
| archiveheader={{Automatic archive navigator}}
| minthreadsleft=5
| minthreadstoarchive=2
}}
{{User:ClueBot III/ArchiveThis
| age=2160
| archiveprefix={{SUBST:FULLPAGENAME}}/Archive
| maxarchsize=75000
| header={{Automatic archive navigator}}
| minkeepthreads=5
| minarchthreads=2
| format= %%i
}}
Both of the above examples will create archive pages, as needed, starting with YourPage/Archive 1 and continuing with YourPage/Archive 2, etc., when the current archive page grows to more than 75,000 bytes. Only sections with dates that are older than 90 days (2,160 hours) will be archived, although the five sections with the most recent contributions will be retained on the talk page no matter how long ago the last contribution was added.
Warning: the system variable {{SUBST:FULLPAGENAME}} is replaced by the talk page name when the template is saved to a talk page. However some punctuation characters that can appear in a page name ("&') are replaced by HTML character codes that are not recognised by the bots (see mediawikiwiki:Manual:PAGENAMEE encoding for details about these and other characters). For example ' is replaced with ' (so if the bot is to work then ' must be replaced with '.

Archives by year/month

Archives by year/month
lowercase sigmabot III ClueBot III

Note: In this configuration lowercase sigmabot III puts threads into archives based on the last date in each thread. Here is an example of it splitting an archiving task of 185 threads into 54 YYYY/Month based archives.

Note:Each time ClueBot III runs it places threads in a single archive which is the YYYY/Month of (NOW - age). If you are starting archiving with a backlog this will result in a single file with all of your old threads older than age. ClueBot III does not appear to run every single day. Thus, even when archiving has been running for a while, some threads may end up in an archive that is one month later than when they were last edited.

{{User:MiszaBot/config
| algo=old(90d)
| archive={{SUBST:FULLPAGENAME}}/Archives/%(year)d/%(monthname)s
| minthreadsleft=4
| minthreadstoarchive=2
}}
{{User:ClueBot III/ArchiveThis
| age=2160
| archiveprefix={{SUBST:FULLPAGENAME}}/Archives/
| minkeepthreads=4
| minarchthreads=2
| format=Y/F
}}
Both of the above examples will create archive pages, as needed, with names similar to YourPage/Archives/June, YourPage/Archives/July, etc. Only sections with dates that are older than 90 days (2,160 hours) will be archived.
see the Warning above for the system variable FULLPAGENAME

The configuration template for lowercase sigmabot III is still named {{User:MiszaBot/config}} even though the original bots, MiszaBot I, MiszaBot II, and MiszaBot III, are no longer active.

The best age for threads to be archived will vary, depending on talk page activity. The purpose of archiving article talk pages should be to remove stale discussions, not to stifle discussion. Article talk page threads should not typically be archived in less than 30 days except for very busy talk pages.

The maxarchivesize/maxarchsize parameter determines how large each archive is allowed to grow before a new archive is started. Keeping this value larger than a typical talk page allows the archives to be browsed more easily, but increases page load times. Each individual archive should not be larger than 512kB, because this may cause accessibility problems for some devices. Because a large batch of threads can "overshoot" the maxarch[ive]size parameter, the parameter should always be set lower than the maximum acceptable archive size.

Templates

For archive pages

A template should be placed at the top of each archive page indicating that it is an archive. The simplest such template is {{Talk archive}}. If the page is using sequentially numbered archives, you can instead use {{Automatic archive navigator}} which will add navigation links to earlier and later archives (example).

ClueBot III and Lowercase sigmabot III will automatically place {{Talk archive}} on archive pages they create. They can be configured to use other templates using the header and archiveheader parameters, respectively. For example (for ClueBot III), |header={{Automatic archive navigator}}.

For talk pages

There are many templates that can be placed on talk pages to make the page's archives visible and accessible to editors. These can be broadly divided into "boxes" (which generally appear floating to the right of the table of contents), and banners. Some pages use one or the other, and some use both.

Archive link boxes

On regularly archived talk pages, it is useful to have an "archive box" template. Common usage is to place the archive box below other header templates and before the first section heading so that the box appears to the right of the table of contents. If the page already has a manual archive box, add the link to the new archive page to it. If there is no archive box yet, you may want to set one up.

generates a floating box for archive links. It has a significant number of options. The auto option causes the box to automatically find your archive page list. If auto=yes or auto=short the links are shown as "1, 2, 3". If auto=long the links are shown as "Archive 1, Archive 2, Archive 3"). There are also options which show a search field, permit the box to collapse/expand, start the box collapsed/expanded, etc. Both the arguments and functionality are a superset of {{Archive box}} (below) as {{Archive box}} calls {{Archives}}. The code used to generate the example to the right is:
{{Archives |auto=yes |search=yes |title=[[Help:Archiving a talk page|Archives]] ([[{{#titleparts:{{TALKPAGENAME}}|1}}/Archive index|index]]) |bot=ClueBot III |age=90 }}
generates a floating box for archive links. It calls {{Archives}} (above) with some parameters non-existent or renamed. As with {{Archives}}, if you want to specify explicit archive links just place your link(s) as a parameter, for example {{Archive box|[[/Archive 1]]}} as the first unnamed parameter. Multiple archives can be named, linked and labeled in various ways. See the example archive box to the right. Provided the archives are in the precise format of "Archive numbered-sequence", the list can be generated automatically using {{Archive box | auto=yes }} or {{Archive box | auto=long }} (for details see Automatic links). Both the arguments and functionality of this template are very similar to {{Archives}}. The wiki code used for the example box is (for details see the template page):
{{Archive box |search=yes |title=[[Help:Archiving a talk page|Archives]] ([[{{#titleparts:{{TALKPAGENAME}}|1}}/Archive index|index]]) |bot=MiszaBot III |age=90 |[[/Old page|Old page]] <br /> [[/Archive 1|Archive 1]] <br /> [[/Archive 2|Archive 2]]}}
If you would rather have the archive pages found automatically the following code would be equivalent:
{{Archive box |auto=yes |search= yes |title=[[Help:Archiving a talk page|Archives]] ([[{{#titleparts:{{TALKPAGENAME}}|1}}/Archive index|index]]) |bot=MiszaBot III |age=90 |collapsible=yes|[[/Old page|Old page]]}}
In the above example you still need the unnamed parameter |[[/Old page|Old page]] because that page does not have a name in a format which is automatically found.
There are a large number of options for both {{Archives}} and {{Archive box}}. The example to the right demonstrates the collapsible=yes option which provides the ability to be partially hidden. It is possible to start out in the hidden state with collapsed=yes. The automatically found numbered archive names can be shown as long names by using auto=long. If an archive box is displayed in a talk namespace it is usually displayed with the standard talk page color scheme. If it is displayed in a non-talk namespace it uses the standard color scheme for article space. The style option can be used to change the color scheme along with any other parameter specified in the string of CSS you assign.
is a visual modification of {{Archive box}}, which generates a collapsed box that can be opened with a click. It works with the same parameters as {{Archive box}}. See the example to the right. Detailed instructions are on the template page. This template is a bit redundant as the other templates support collapsible and collapsed forms through the use of collapsible=yes and collapsed=yes. The code for this example is:
{{Archive box collapsible|box-width=238px|
*[[/Archive. Old page|Old page]]
*[[/Archive 1|Archive 1]]
*[[/Archive 2|Archive 2]]}}

Automatic archive boxes for numbered archives

All of {{Archives}}, {{Archive box}} and {{Archive box collapsible}} can automatically list links to archives. Automatic archive detection is usually enabled using the auto parameter which can be set to any of: short, long, yes, or no. Automatic archive page detection is usually limited to numbered archives in the format /Archive 1, /Archive 2, etc.). Instructions are on the respective template pages.

One example is {{Archive box|auto=yes}}. It will automatically create an archive box of links to archive pages named /Archive 1, /Archive 2, etc. Archives with other names can be added within the first unnamed parameter.

Instead of an archive box, {{Archive banner}} displays a banner across the page. As with the archive box templates it can have links to the archives (automatic or manual), have an archive search box, be collapsible, etc.

Automatic archive boxes for year/month archives

Automatic archive boxes for Year/Month archives are a bit more complicated.

The most common method is by using the {{Archives by months}} template to generate links to your existing archives. It produces a live link for each existing archive month within a year. It is commonly used in something similar to:
{{Archive box |search=yes |collapsible=yes |
bot=ClueBot III |age=90 |
title=[[Help:Archiving a talk page|Archives]]<!--
--> ([[{{#titleparts:{{TALKPAGENAME}}|1}}/Archive index|index]])| 
{{Nowrap|'''2004''': {{Archives by months|2004}}}}
{{Nowrap|'''2005''': {{Archives by months|2005}}}}
{{Nowrap|'''2006''': {{Archives by months|2006}}}}
{{Nowrap|'''2007''': {{Archives by months|2007}}}}
{{Nowrap|'''2008''': {{Archives by months|2008}}}}
{{Nowrap|'''2009''': {{Archives by months|2009}}}}
{{Nowrap|'''2010''': {{Archives by months|2010}}}}
{{Nowrap|'''2011''': {{Archives by months|2011}}}}
{{Nowrap|'''2012''': {{Archives by months|2012}}}}
{{Nowrap|'''2013''': {{Archives by months|2013}}}}
{{Nowrap|'''2014''': {{Archives by months|2014}}}}
{{Nowrap|'''2015''': {{Archives by months|2015}}}}
{{Nowrap|'''2016''': {{Archives by months|2016}}}}
}} 

The above code produces the archive box to the above right. The example here has no month names which are links because there are no archive files for this page. You can, of course, delete the lines for the years you don't want.

The default for the {{Archives by months}} template is that archive page names are in the format YourPage/Archives/2013/June, YourPage/Archives/2013/July, etc. However, {{Archives by months}} allows you to specify various naming conventions for your archives. Archives can have an arbitrary prefix by using the archprefix parameter (e.g. archprefix=Archive/ instead of Archives/). Months can be in four formats: A) the default uses January, February, March, etc.; B) abbrev3=yes months are Jan, Feb, Mar, etc.; C) numbers=yes months are 1, 2, 3, ... 12; D) numbers0=yes months are 01, 02, 03, ... 12.

If you are using ClueBot III, it has a couple of additional options for creating an archive box. These involve the use of either the archivebox or the index parameters. See the ClueBot III page for more information.

Archive link banner and archive notice banner

Instead of putting the archive links in a box that floats to the right or left, some prefer the links in a banner.

{{Talk header}} and {{Auto archiving notice}}

{{Talk header}}

The links are in a row at the bottom of the above banner. For examples; see Special:WhatLinksHere/Template:talkheader.

{{Auto archiving notice|bot=ClueBot III|age=14}}

{{Auto archiving notice|bot=Lowercase sigmabot III|age=14}}

"Age" is in days. For notice examples; see: Special:WhatLinksHere/Template:Auto archiving notice.

Archive indexing

Having an archive index makes finding old discussions on a given topic easier, particularly in pages with many archives, or when the archives are of considerable size. An archive index, when one exists, is typically stored on the page Talk:YourPage/Archive index. While it is possible to generate an index by hand, the /Archive index page is normally generated automatically. There are two bots which automatically create indexes: Legobot and ClueBot III.

Legobot, formerly HBC Archive Indexerbot, can create an archive index page based on a set of archives. See the bot's instructions for details on how to set up archive indexing. Legobot generated archive indexes are the most commonly available type of index. To set up Legobot archiving you have to create your Talk:YourPage/Archive index page and need to place:
<!-- Legobot can blank this -->
on top of the index page. The following is a Legobot configuration that works with numbered archives which you can place on the page you are archiving:

Example Legobot configurations
Numbered archives Archives/Year/Month
{{User:HBC Archive Indexerbot/OptIn
|target=/Archive index
|mask=/Archive <#>
|leading_zeros=0
|indexhere=yes
}}
{{User:HBC Archive Indexerbot/OptIn
|target=/Archive index
|mask=/Archives/<year>/<month>
|indexhere=yes
}}

ClueBot III automatically creates an archive index when archiving. ClueBot III stores the archive indexes it creates on unique pages in its user space. The archive index for the page you are archiving can be transcluded onto your Talk:YourPage/Archive index page by putting the following text in that page:
{{User:ClueBot III/Master Detailed Indices/{{NAMESPACE}}: {{BASEPAGENAME}}}}

Archive searching

If there are several archives, it is easy to search them all at once using the optional search parameter prefix. For example, suppose we want to begin a discussion about adding a security section to the Linux article. Before bringing up the topic we can do the following search: security prefix:Talk:Linux/. This will look in all the subpages of the Linux article in its Talk namespace.

The templates {{Archives}}, {{Archive box}}, and {{Talk header}} have a parameter search=yes which provides a helpful search box on the talk page to automate searching, as do independent search templates such as {{search archives}}. It is recommended that when a page is archived, such a template be put on the surviving talk page to simplify access to past discussions.

Continuing discussions

It is difficult to say exactly when a discussion "ends" and when it is continuing. Given that archived discussions are immutable, archiving a discussion effectively ends that particular discussion. When reopening a discussion is desired, links to archived discussions can be provided in the new discussion thread.

Example pages

Here are actual discussion pages on Wikipedia where you can study the code to see how archive pages were created.

  • Talk:Psychokinesis has a simple archive box with a search field.
  • Talk:Jesus has a mixture of numbered and topical archives. It also includes a summary of recently archived discussions.
  • Talk:Main Page has many numbered archives. The archives are listed on a separate subpage and transcluded.

Other procedures for archiving

Other procedures were once considered equal options with the procedure described above. Over time both methods fell out of use and are generally not used. If you have used the page move procedure those pages do not qualify for speedy deletion by user request.

See also