The percent sign (%) is the symbol used to indicate a percentage, a number or ratio as a fraction of 100. Related signs include the permille (per thousand) sign ‰ and the permyriad (per ten thousand) sign ‱ (also known as a basis point), which indicate that a number is divided by one thousand or ten thousand respectively. Higher proportions use parts-per notation.
There is no consensus as to whether or not to include a space between the number and percent sign in English. Many authorities prescribe that there should be a space, whilst others advise against it. The brochure of the International System of Units declares in chapter 5: “a space separates the number and the symbol %”. The ISO 31-0 standard also specifies a space. This is in accordance with the general rule of adding a non-breaking space between a numerical value and its corresponding unit of measurement. However, style guides—such as the Chicago Manual of Style—commonly prescribe writing the number and percent sign without any space in between.
In some languages, however, there are specific rules of spacing in front of the percent sign. In Czech, for example, the percent sign is spaced if the number is used as a noun, while no space is inserted if the number is used as an adjective (e.g. “a 50% increase”). In Finnish, the percent sign is always spaced, and a case suffix can be attached to it using the colon (e.g. 50 %:n kasvu 'an increase of 50%'). In French, the percent sign is also always spaced because the percent is considered as a unit. In traditional Russian typography there is a set rule to space it by 3 pt but it is not that common in Russia today. In Chinese the percent sign is almost never spaced, probably because Chinese does not use spaces to separate characters or words at all. According to the Swedish Language Council, the percent sign should be preceded by a space in Swedish.
Usage in text
It is often recommended that the percent sign only be used in tables and other places with space restrictions. In running text, it should be spelled out as percent or per cent (often in newspapers). For example, not "Sales increased by 24% over 2006", but rather "Sales increased by 24 percent over 2006".
Prior to 1425 there is no evidence of a special symbol being used for percentage. The Italian term per cento, "for a hundred", was used as well as several different abbreviations (e.g. "per 100", "p 100", "p cento", etc.). Examples of this can be seen in the 1339 arithmetic text (author unknown) depicted below. The letter p with its shaft crossed by a horizontal or diagonal strike conventionally stood for per, por, par, or pur in Mediaeval and Renaissance palaeography.
At some point a scribe of some sort used the abbreviation "pc" with a tiny loop or circle (depicting the ending -o used in Italian numeration for primo, secondo, etc.) This appears in some additional pages of a 1425 text which were probably added around 1435. This is shown below (source, Rara Arithmetica pg. 440).
In 1925 D.E. Smith wrote, "The
The Unicode code points are
- U+0025 % percent sign (HTML:
- U+2030 ‰ per mille sign (HTML:
- U+2031 ‱ per ten thousand sign (HTML:
‱a.k.a. basis point)
There is also U+066A ٪ arabic percent sign (HTML:
٪), which has the circles replaced by square dots set on edge.
In computing, the percent character is also used for the modulo operation in programming languages that derive their syntax from the C programming language, which in turn acquired this usage from the earlier B.
In the textual representation of URIs, a % immediately followed by a 2-digit hexadecimal number denotes an octet specifying (part of) a character that might otherwise not be allowed in URIs (see percent-encoding).
In many programming languages' string formatting operations (performed by functions such as printf), the percent sign denotes parts of the template string that will be replaced with arguments. In Python and Ruby the percent sign is also used as the string formatting operator.
In the command processors COMMAND.COM (DOS) and CMD.EXE (OS/2 and Windows), %1, %2,... stand for the first, second,... parameters of a batch file. %0 stands for the specification of the batch file itself as typed on the command line. The % sign is also used similarly in the FOR command. %VAR1% represents the value of an environment variable named VAR1. Thus:
sets a new value for PATH, that being the old value preceded by "c:\;". Because these uses give the percent sign special meaning, the sequence %% (two percent signs) is used to represent a literal percent sign, so that:
would set PATH to the literal value "c:\;%PATH%".
In linguistics, the percent sign is prepended to an example string to show that it is judged well-formed by some speakers and ill-formed by others. This may be due to differences in dialect or even individual idiolects. This is similar to the asterisk to mark ill-formed strings, the question mark to mark strings where well-formedness is unclear, and the number sign to mark strings that are syntactically well-formed but semantically nonsensical.