A printing system, comprising: a conveyance controller configured to control a conveyor, the conveyor being configured to convey paper having a printing surface in which label portions are formed at predetermined intervals; a sensor configured to irradiate light on the paper conveyed by the conveyor to detect reflected light of the irradiated light; a detector configured to detect an output of the sensor; a moving average calculator configured to calculate moving averages of voltage values based on the output of the sensor detected by the detector; and a determiner configured to determine that a portion between an adjacent pair of the label portions has been detected based on the moving averages of the voltage values calculated by the moving average calculator, and the output of the sensor; wherein the moving average calculator is configured to calculate a moving average for dot lines set based on a length of the portion between the adjacent pair of the label portions; the moving average calculator is configured to acquire a moving average corresponding to the portion between the adjacent pair of the label portions based on the moving averages, and calculate a threshold value for determining to be a portion between the adjacent pair of the label portions based on the acquired moving average corresponding to the portion between the adjacent pair of the label portions and the moving averages; the determiner is configured to determine that the portion between the adjacent pair of the label portions has been detected when the threshold value calculated by the moving average calculator is less than the output of the sensor; and the determiner is configured to determine that fluttering of a label portion has been detected when the threshold value calculated by the moving average calculator is less than the output of the sensor, and when a difference between the output of the sensor and the threshold value is less than a voltage threshold value for determining to be a gap portion, or the number of dot lines for which the output of the sensor exceeds the threshold value is less than a number-of-dot-lines threshold value for determining to be a gap portion. a conveyance controller configured to control a conveyor, the conveyor being configured to convey paper having a printing surface in which label portions are formed at predetermined intervals; a sensor configured to irradiate light on the paper conveyed by the conveyor to detect reflected light of the irradiated light; a detector configured to detect an output of the sensor; a moving average calculator configured to calculate moving averages of voltage values based on the output of the sensor detected by the detector; and a determiner configured to determine that a portion between an adjacent pair of the label portions has been detected based on the moving averages of the voltage values calculated by the moving average calculator, and the output of the sensor; wherein the moving average calculator is configured to calculate a moving average for dot lines set based on a length of the portion between the adjacent pair of the label portions; the moving average calculator is configured to acquire a moving average corresponding to the portion between the adjacent pair of the label portions based on the moving averages, and calculate a threshold value for determining to be a portion between the adjacent pair of the label portions based on the acquired moving average corresponding to the portion between the adjacent pair of the label portions and the moving averages; the determiner is configured to determine that the portion between the adjacent pair of the label portions has been detected when the threshold value calculated by the moving average calculator is less than the output of the sensor; and the determiner is configured to determine that fluttering of a label portion has been detected when the threshold value calculated by the moving average calculator is less than the output of the sensor, and when a difference between the output of the sensor and the threshold value is less than a voltage threshold value for determining to be a gap portion, or the number of dot lines for which the output of the sensor exceeds the threshold value is less than a number-of-dot-lines threshold value for determining to be a gap portion.