Moving codes
Changing the structure of the category system is not difficult. All codes can be moved with the mouse and the drag-and-drop function.
In the following example, the “Code System” contains four codes (C, B, A, and D).

To move Code D to the top of the list, you would need to do the following: Click on Code D and drag it in front of Code A while holding down the left mouse button, then, when a line appears, drop the code.
It is also easy to make a code a subcode of another code. If you want Code B to become a subcode of Code A, for example, you would carry out the following actions: Click on Code B, drag it to Code A, and release as soon as Code A has a green background. Code B is then added as a subcode of Code A.
Move multiple codes
You can select multiple separate codes while holding down the Alt/Option key and then move your selection while holding down the mouse button. To select a range of codes, first click on a code and then click on a second code while holding down the Shift key ⇧. This will then also select all codes between the clicked codes.
Sorting subcodes
Subcode can be sorted in ascending and descending order by name and by frequency, by right-clicking the parent code and selecting Sort subcodes from the context menu.
Adding a new top-level code
A common procedure when working with codes is to group previously defined codes under a new, more abstract category, as shown in the next diagram:
MAXQDA’s hierarchical “Code System” makes it easy to group existing codes under new top-level codes. Reorganizing the “Code System” can be done at any time during the analysis process:
- Create a new code at the top level of the hierarchy (New Code in the example above).
- Drag Code B to New Code and release it; it will be inserted as a subcode.
- Do the same with Code D.

Dividing a code into subcodes
Often when working with a “Code System,” it is desirable to differentiate between elements grouped under one code. In MAXQDA this corresponds to dividing a code into two or more subcodes. For example, imagine you have created a code named “Family” and have assigned document segments, in which an interviewee talks about his family, to this code. Then imagine that it becomes necessary to differentiate between “Mother”, “Father”, and “Brothers&Sisters.”
The division of a code into subcodes can obviously not happen automatically because you must decide which references of the code are to be placed in which subcode. You must read each coded segment and decide which of the subcodes is appropriate. In this case, the subcodes will not be exclusive since a person could talk about his father and his mother in the same segment.
Codes can be divided as follows:
- Activate all documents and the code “Family.”
- Create three subcodes for “Family”: “Mother,” “Father,” and “Brothers&Sisters.”

A convenient way to separate the code references into the new subcodes is to bring all the coded segments (in our example with “Family”) into the “Retrieved Segments” window. Then, beginning with the first segment, click the information box left of the segment for each segment. After having decided which subcode the segment belongs to, you can assign the segment to the appropriate subcode as follows:
- The easiest option: Click on the information box and drag it to the chosen subcode.
- When you click on the infobox, the coded segment will also be selected in the “Document Browser.” It can now be coded as usual, for example using Drag & Drop.
This is how you can work with all segments, so you continue in the same manner for the second. When you get to the end of the list, all segments will have been re-classified - they have been assigned to one of the three codes in question.
If you used the second method, the old coded segments in the parent code will have been retained, that is, all segments will still be coded under "Family". However, this is not always useful - the old codes of the parent code usually need to be removed. To do this, you can double-click on the parent code, for example, to list its coded segments in the "Overview of Coded Segments", select all encodings and then click on the delete symbol in the toolbar.
Copying subcodes
In some cases, you will be setting up the same subcodes for various codes. You might, for example, have the codes “Childhood,” “Teenage Years,” and “Adult Life,” which should each have the subcodes “Education,” “Family,” “Friends,” and “Memorable Experiences.” So that you don’t have to create these four subcodes three times, you have the option of setting them up for one of the main codes, copying its subcodes, and pasting them into the other main codes. To do so, you would follow these steps:
- Create the three main codes: “Childhood,” “Teenage Years,” and “Adult Life.”
- Create the four subcodes for the main code “Childhood.”
- Right-click on the Childhood code and select Copy subcodes.
- Right-click on each of the other main codes and select Paste subcodes.
MAXQDA then adds the copied sub-codes in the same order as the original code. The newly inserted sub-codes keep the Color previously assigned to them.