The violence flared in the garrison town of Bannu, southwest of Peshawar, after a rally of about 500 protesters refused to move from a busy road they had blocked for three hours.
Police said the protester was killed during exchange of fire, but residents blamed police for the killing.
"One protester died and 14 were injured during the exchange of fire," Farid Khan, a local police officer in Bannu told AFP by telephone.
"Police used wooden sticks to beat the crowd back and tear gas to disperse them from the road, but they began pelting the police with stones," said Khan.
Akbar Hussain, another police official in Bannu told AFP that someone in the crowd had fired the first shots.
"Police first fired in the air but some people in the crowd directly fired on us and the man was killed during a subsequent exchange of fire," he said.
Hussain said the protesters had attacked a local electricity grid station to protest against the low levels of energy.
Residents said they are currently receiving five to eight hours of electricity every 24 hours.
A curfew has been imposed along a main road linking Bannu to the neighbouring Dera Ismail Khan district, police said.
Pakistan has experienced severe electricity outages across the country since early 2008, with an increasing number of blackouts, including in the capital Islamabad.
Authorities blame the problem on a lack of water for hydropower facilities.