A keypunch is a device for precisely punching holes into stiff paper cards at specific locations as determined by keys struck by a human operator. Other devices included here for that same function include the gang punch, the pantograph punch, and the stamp.
For Hollerith machines and other unit record machines the resulting punched cards contained data to be processed by those machines. For computers equipped with a punched card input/output device the resulting punched cards were either data or programs directing the computer's operation.
Early Hollerith keypunches were manual devices. Later keypunches were electromechanical devices which combined several functions in one unit. These often resembled small desks with keyboards similar to those on typewriters and were equipped with hoppers for blank cards and stackers for punched cards. Some keypunch models could print, at the top of a column, the character represented by the hole(s) punched in that column. The small pieces punched out by a keypunch fell into a chad box, or (at IBM) chip box, or bit bucket.
In many data processing applications, the punched cards were verified by keying exactly the same data a second time, checking to see if the second keying and the punched data were the same (known as two pass verification). There was a great demand for keypunch operators, usually women, who worked full-time on keypunch and verifier machines, often in large keypunch departments with dozens or hundreds of other operators, all performing data input.
In the 1950s, Remington Rand introduced the UNITYPER, which enabled data entry directly to magnetic tape for UNIVAC systems. Mohawk Data Sciences subsequently produced an improved magnetic tape encoder in 1965, which was somewhat successfully marketed as a keypunch replacement. The rise of microprocessors and inexpensive computer terminals led to the development of additional key-to-tape and key-to-disk systems from smaller companies such as Inforex and Pertec.
Keypunches and punched cards were still commonly used for both data and program entry through the 1970s but were rapidly made obsolete by changes in the entry paradigm and by the availability of inexpensive CRT computer terminals. Eliminating the step of transferring punched cards to tape or disk (with the added benefit of saving the cost of the cards themselves) allowed for improved checking and correction during the entry process. The development of video display terminals, interactive timeshared systems and, later, personal computers allowed those who originated the data or program to enter it directly instead of writing it on forms to be entered by keypunch operators.
Jacquard cards were said to be stamped or cut (not punched). The first Jacquard cards were stamped by hand, sometimes using a guide plate. An improvement was to place the card between two perforated metal plates (hinged together), insert punches according to the desired pattern, then pass the assembly through a press to cut the card. These essentially manual processes were replaced by machines; piano machines (the name taken from the keys), operated by keyboards and comparable in function to unit record keypunches, becoming the most common.
Herman Hollerith's first device for punching cards from the 1890s was . Use of such a punch was facilitated by placing the holes to be used near the edges of the card. Hollerith soon developed a more accurate and simpler to use Keyboard Punch, using a pantograph to link a punch mechanism to a guide pointer that an operator would place over the appropriate mark in a 12 by 20 matrix to line up a manual punch over the correct hole in one of 20 columns....any ordinary ticket punch, cutting a round hole 3/16 of an inch in diameter
In 1901 Hollerith patented a mechanism where an operator pressed one of 12 keys to punch a hole, with the card automatically advancing to the next column. This first-generation Type 001 keypunch used 45 columns and round holes. In 1923 The Tabulating Machine Company introduced the first electric keypunch, the Type 011 Electric Keypunch, a similar looking device where each key closed an electrical contact that activated a solenoid which punched the hole. The 80 column punched card format was introduced in 1928. Later Hollerith keypunches included the Type 016 Motor-Driven Electric Duplicating Keypunch (1929), the Type 31 Alphabetical Duplicating Punch (1933), and the Type 32 Alphabetical Printing Punch (1933).
"Alphabetical duplicating keypunches recorded alphabetic information in tabulating cards so that complete words and names, together with numerical data, could be later printed by an alphabetical accounting machine. The Type 31 Alphabetical Duplicating Punch was introduced by IBM in 1933, and it automatically ejected one card and fed another in 0.65 second. These machines were equipped with separate alphabetical and numerical keyboards. The alphabetical keyboard was similar to a conventional manual typewriter except that the shift, tab, backspace and character keys were eliminated, and a skip, release, stacker and '1' key were provided." – IBM Archives
Most IBM keypunch and verifiers used a common electrical/mechanical design in their keyboards to encode the mechanical keystrokes. As a key was depressed, a link on the keystem tripped a corresponding set of bails at the top of the keyboard assembly. The bails in turn made (closed) contacts to encode the characters electrically. As each key stroke was detected by the machine, a feed-back circuit energized a pair of magnets with a bail which restored the keystem mechanically, reset the bails performing the electrical encoding, and gave the "feel" and sound to the operator of a completed action. Each machine had a tendency to develop a "feel" of its own based on several variables such as the amount of wear, dirt, and clearance of the bail contacts within the keyboard, as well as factors in the base machine. The keyboards, however, had no provision for adjusting the "feel" other than the correct adjustment of the contacts on the restore bail contacts and the encoding bail contacts. Special function keys such as shift, release, duplication and others, had only electrical contacts under their stems, with no mechanical linkage to the bail assembly for encoding.
IBM keypunches such as the 024, 026, and 029 provided for the mounting of a program card that controlled various functions, such as tabbing and automatic duplication of fields from the previous card. The later 129 used electronic circuit cards to store simple programs written by the keypunch operator.
The IBM 024 Card Punch and IBM 026 Printing Card Punch  were announced in 1949. They were almost identical, with the exception of the printing mechanism. The heart of the 024 and 026 keypunches was a set of twelve precision punches, one per card row, each with an actuator of relatively high power. Punch cards were stepped across the punch one column at a time, and the appropriate punches were activated to create the holes, resulting in a distinctive "chunk, chunk" sound as columns were punched. Both machines could process 51-, 60-, 66-, and 80-column cards.
The 026 could print the punched character above each column. By 1964 there were ten versions with slightly different character sets. The scientific versions printed parentheses, equal sign and plus sign in place of four less frequently used characters in the commercial character sets.
Logic consisted of diodes, 25L6 vacuum tubes and relays. The tube circuits used 150VDC, but this voltage was only used to operate the punch-clutch magnet[clarification needed]. Most other circuits used 48VDC.
Characters were printed using a 5x7 dot matrix array of wires; the device from which it derived the shape of the character was a metal plate, called the "code plate," with space for 1960 pins (35 pins times 56 printable characters). If the dot was not to be printed in a given character, the pin was machined off. By correctly positioning the plate and pressing it against one end of the array of printing wires, only the correct wires were pressed against the ribbon and then the punched card. (This printer mechanism was generally considered by IBM Customer Engineers to be difficult to repair. One of the most common problems was wires breaking in the tightly curved narrow tube between the code plate and the ribbon - extracting the fragments and replacing the bundle of 35 wires was very tedious). The printing mechanism was prone to be damaged if a user attempted to duplicate "binary" cards with non-standard punch patterns. These could cause the code-plate positioning mechanism to try to shift the plate beyond its intended range of motion, sometimes causing damage. Turning off printing did not actually prevent the damage, as many people assumed, because the code-plate mechanism remained engaged with the punch unit and shifted the code plate. Turning off printing only suppressed pressing the printing pins into the ribbon and card.
Raymond Loewy, industrial designer of "streamlined" motifs who also designed railway passenger cars of the 1930s and 1940s, did the award-winning external design of the 026/024 Card Punches for IBM. Their heavy steel construction and rounded corners () indeed echo the industrial Art Deco style.
The IBM 056 was the verifier companion to the 024 Card Punch and 026 Printing Card Punch. The verifier was similar to the 026 keypunch except for a red error lens in the machine cover lower center. The verifier operator entered exactly the same data as the keypunch operator and the verifier machine then checked to see if the punched data matched. Successfully verified cards had a small notch punched on the right hand edge.
The IBM 056 verifier used most of the same mechanical and electrical components as the 024/026 keypunches with the exception of the punch unit and print head. The punch unit had sensing pins in place of the punches. The holes sensed or not sensed would trip a contact bail when the configuration was other than that entered by the verifier operator. This stopped the forward motion of the card, and presented a red error light on the machine cover. The notching mechanism was located in the area occupied by the print mechanism on a 026 printing keypunch. It had a solenoid which drove the notching mechanism, and another that selected the top notch punch or end of card punch.
When an operator keying data to be verified encountered an error, the operator was given a second and third try to re-enter the data that was supposed to be in the field. If the third try was incorrect an error notch was put on the top of the card over the column with the error and the "OK" punch at the end of the card was not enabled. The data on the card could actually be correct, since the verifier operator was just as likely to make an error as the keypunch operator. However, with three tries, the operator was less likely to repeatedly make the same error. Some verifier operators were able to guess the error on the card created by the previous keypunch operator, defeating the purpose of the verify procedure, and thus some machines were altered to allow only one entry and error notched on the second try.[clarification needed]
Cards with error notches were re-punched (using an 024 or 026) usually by "duplicating" up to the column in error, then entering the correct data. The duplicating function was accomplished by feeding the card through the punch station without punching it. At the next station sensing pins read the holes present in the original card and transferred the data to the punching station and onto a blank card. Columns with errors were corrected instead of being duplicated. The corrected card was then verified to check the data again and be "OK notched".
The first combination of card punch and typewriter, permitting selected text to be typed and punched, was developed by the Powers company in 1925. The IBM 824 Typewriter Card Punch was an IBM 024 where the 024 keyboard was replaced by an IBM electric typewriter. Similarly, the IBM 826 used an IBM 026 Keypunch.
Introduced with System/360 in 1964, the 029 had new character codes for parentheses, equal and plus as well as other new symbols used in the EBCDIC code. The IBM 029 was mechanically similar to the IBM 026 and printed the punched character on the top of the card using the same kind of mechanism as the 026, although it used a larger code plate with 2240 printing-pin sites due to the larger set of characters in EBCDIC.
The 029's logic consisted of wire contact relays on later models and reed relays and diodes on SMS cards for early ones. The more "advanced" reed relays used at first proved to be less reliable than expected, causing IBM to revert to the older-style wire-contact relay-based design. All ran on 48 volts DC, and did not require the vacuum tubes that were used in the 024/026. A common additional feature made available (at additional cost) was the leading zeros feature (termed "Left-Zero"). This was delivered by an additional set of four SMS cards. The field was programmed for leading zeros using the program card. If it was (say) a six digit field, the operator only had to key in the actual value (for example 73). The feature would then fill the field by punching the leading four zeros, followed by the 73, in effect right justifying the field, thus: 000073.
The IBM 5924 Key Punch was the 029 model T01 attached with a special keyboard in IBM's 1971 announcement of the IBM Kanji System, the keypunch operator's left hand selecting one of 15 shift keys and the right hand selecting one of 240 Kanji characters for that shift. It introduced the computer processing of Chinese, Japanese and Korean languages that typically used large character sets over 10,000 characters.
The IBM 059 was the Verifier companion to the IBM 029 Card Punch. In design, it differed radically from the earlier 056 verifier, in that it used optical sensing of card holes instead of mechanical sensing pins. This made the 059 much quieter than the 056 (which was often louder than the 024 keypunch). The optical sensors used a single light source, which was distributed to various sites within the machine via fiber-optic lightpipes. Despite the technology, the basic mode of operation remained essentially the same as with the 056.
Ironically, not all verifier operators appreciated the noise reduction. When used in a room also containing 029 keypunch machines, the verifier operators sometimes missed the auditory feedback provided by the loud "thunk" noise emitted by the older 056. Some were known to compensate by hitting the keys harder, sometimes actually wearing out keyboard parts.
Introduced with the System/370 in 1971, the IBM 129 was capable of punching, verifying, and use as an auxiliary, on line, 80 column card reader/punch for some computers. A switch on the keyboard console provided the ability to toggle between the punch and verify modes.
The transistorized IBM 129 Card Data Recorder's primary advantage over other IBM keypunches was that it featured an electronic 80-column buffer to hold the card image. When using earlier IBM keypunches, a keystroke error required the card to be ejected by pressing the Release and Register keys, the error corrected by pressing the Duplicate key until the error column was reached, typing the correct data for the rest of that card, then pressing the Release key and manually removing the bad card from the output card stacker before it was placed in the deck (this required some practice, but quickly became an automatic action that you no longer had to think about). With the 129, a keystroke error could be erased by pressing the Backspace key and re-keyed. The entire 80-column card was punched automatically, as fast as the mechanism could go, when the Release key was pressed.
A secondary advantage of the 129 was that the speed of the keying operation was not limited by punching each column at the time of the keystroke.
The 129 could store six programs in its memory, selectable by a rotary switch. Unlike earlier keypunch machines, the program cards were read into memory via the regular card-feed path, and were not wrapped around a "program drum".
Thanks to its use of electronic memory, the 129 did not have a separate "read station" with a pin-sense unit to enable duplication of data from one card to the next. Instead, duplication was based on the stored image of the previous card. Cards could also be "read-in" through an optical read unit integrated into the punch station.
IBM 024, 026, and 029 keypunches and their companion verifiers, the 056 and 059, could be programmed to a limited extent using a Program Card, also known as a drum card. The keypunch or verifier could be programmed to automatically advance to the beginning of each field, default to certain character types within the field, duplicate a field from the previous card, and so on. Program cards were an improvement over the Skip Bar used in some earlier keypunches.
The program was encoded on a punched card and could be prepared on any keypunch (a keypunch would operate even if no program card was in place). The program card was wrapped around the program drum, and clamped in place. The drum rotated as the card being punched moved through the punching mechanism. The holes in the program card were sensed by an array of starwheels that would cause levers to rise and fall as the holes in the program card passed beneath the starwheels, activating electrical contacts. The program was encoded in the top six rows [12,11,0,1,2,3]. If the optional Second Program feature was installed, another program could be encoded in the bottom six rows [4,5,6,7,8,9]. A switch let the operator select which program to use. The central cover on the keypunch could be tilted open toward the operator and a locking lever released, allowing the program drum to be removed and replaced.
The program card was punched with characters that controlled its function as follows:
1.......10........20........30........40........50........60........70........80 1AAAAAAAA1AAAAA1AAAAAAAAAAAAAAAAAAA1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA &&&&&&&&
In this example, if the keypunch operator typed a few characters at the beginning of the card and then pressed the skip key, the keypunch would tab to column 10. When a program code of blank is followed by "Field Definition" (12) (or (4) for program 2), it defines a "Numeric Shift" field. In the example above, columns 72-80 are defined in the program as a Numeric Shift field. In practice, this definition would likely be used for punching a special symbol as a "continuation character" in column 72, and then columns 73-80 could either be punched with a card sequence number or the card could be released at that point, if no further typing was required.
Note: "Field Definition" (12) and "Alphabetic Shift" (1) prints as an A.
If program 2 codes were punched, invalid characters could be generated that the printer did not know how to print, some of which could even damage the printer.
Program cards could automate certain tasks, such as "gang punching", the insertion of a constant field into each card of a deck of cards. For amusement, program cards could even be set up to play music by gang-punching "noisy" characters (characters represented by many holes, usually special characters) and "quiet" numbers and letters in rhythmic patterns.
In 1969, IBM introduced the System/3 family of low-end business computers which featured a new, smaller-sized, 96 column punched card. The IBM 5496 Data Recorder, a keypunch with print and verify functions, and IBM 5486 Card Sorter were made for these 96-column cards.
Beginning around 1906, an employee of the United States Census Bureau, James Powers, developed the Powers Keypunch, which was specific to the census application and had 240 keys. In 1911, Powers formed Powers Accounting Machine Company. That company was taken over by Remington Rand in 1927. Remington Rand's UNIVAC division made keypunches for their 90-column cards and similar machines for the IBM 80-column card. Their 90-column keypunches used a mechanical system developed by Remington Rand to avoid IBM patent issues (long before the acquisition of Eckert-Mauchly Computer Corporation). UNIVAC keypunches stored the sequence of characters for an entire card, then punched all its holes in a single pass, which allowed for corrections instead of wasting a card in case of error.
Remington Rand keypunches included: UNIVAC Card Code Punch Type 306-5, 90 Column Alphabetical (Types 306-2, 306-3), 90 Column Numerical (Types 204-2, 204-3), Portable Electric Punch Type 202, Spot Punch Type 301, and the Automatic Verifying Machine Type 313.
The Type 306-2 provided for verification; the cards were passed through the keypunch a second time and keyed again. The verify-punching of the same cards in the same sequence ... results in the elongation of perforations for correct information. Round perforations indicate incorrect information. Complete and rapid detection of errors is performed mechanically by the Automatic Verifying Machine
The UNIVAC 1710 Verifying Interpreting Punch was introduced in 1969.
This use of the verb has replaced the former process, described  as "When a key is struck on a keypunch, it prints the character on the top of the card but also punches a series of holes that the computer" can interpret."
In the 1950s, Remington Rand introduced the UNITYPER, which enabled data entry directly to magnetic tape for UNIVAC systems. Mohawk Data Sciences subsequently produced an improved magnetic tape encoder in 1965, which was somewhat successfully marketed as a keypunch replacement. In the mid-1970s, the rise of microprocessors and inexpensive computer terminals led to the development of additional key-to-tape and key-to-disk systems from smaller companies such as Inforex and Pertec.
Punched cards were still commonly used for data entry and programming until the mid-1980s. However, eliminating the step of transferring punched cards to tape or disk (with the added benefit of saving the cost of the cards themselves) allowed for improved checking and correction during the data entry process. The development of video display terminals, interactive timeshared systems and, later, personal computers allowed workers who originated the data to enter it directly instead of writing it on forms to be entered by data entry clerks.