DP3 (the Default Preprocessing Pipeline) is the LOFAR data pipeline processing program and is the successor to DPPP (ascl:1804.003). It performs many kinds of operations on the data in a pipelined way so the data are read and written only once. DP3 preprocesses the data of a LOFAR observation by executing steps such as flagging or averaging. Such steps can be used for the raw data as well as the calibrated data by defining the data column to use. One or more of the following steps can be defined as a pipeline. DP3 has an implicit input and output step. It is also possible to have intermediate output steps. DP3 comes with predefined steps, but also allows the user to plug in arbitrary steps implemented in either C++ or Python.