Bluetooth Low Energy (BLE)-based localization is a promising candidate of indoor localization for low power mobile and Internet of Things (IoT) systems. Localization accuracy of BLE-based localization systems is lower than other localization technologies relying on wideband wireless communication such as WiFi due to limited channel bandwidth. In our previous paper, we proposed an accuracy improvement method named separate channel fingerprinting (SCF), which, however, suffers from a high maximum localization error more than 6 meters. This paper therefore presents 2-step separate channel fingerprinting (2SSCF). 2S-SCF first coarsely estimates location by conventional BLE fingerprinting and utilizes SCF to estimate the fine-grained location. We experimentally demonstrate that 2S-SCF successfully reduced localization errors 95 % of time with a small maximum localization error.