Could be carbon buildup. My PT (273,000 miles) started pinging under load a while ago. Since then, it developed a miss at idle, which, with the help of people here, has been pretty much narrowed down to a leaky/burnt valve. The heads have never been off the engine so I had no clue how much carbon could be there. Since I figured I had nothing to lose, I bought the spray Seafoam and gave it a shot. Didn't help the missing issue, but as a side benefit, the pinging is totally gone. No matter how much load I put on the engine, it will not ping. Also, aside from the idle, the car is running great. When I get closer to when I need to change the timing belt (about another 30,000 miles), I'm going to change the head to rectify the miss.
Not sure if you want to try Seafoam. It's the first time I ever used it, but figured I had nothing to lose. The spray was very easy to use, and it did make a difference.
Doug