The nominate subspecies of the dusky crag martin breeds in much of the Indian subcontinent from the base of the Himalayas south to the Nilgiri mountains and east to West Bengal, and P. c. sintaungensis is found in southwestern China, and the northern parts of Thailand, Vietnam and Laos. The dusky crag martin is largely resident apart from local movements after breeding, but it has bred in Malaysia at least once, and occurred as a vagrant to Sri Lanka and probably Borneo.