Distributed systems greatly benefit from caching. Caching data objects of variable size and cost poses interesting questions that have been researched for the past ten years. As a result, a few good algorithms have come to the fore. These algorithms make effective decisions in selecting cache objects for removal. However, they make no decision about the suitability of a new object for placement into the cache. We show that “selective placement” can add further improvement to these algorithms when a request pattern consists of frequent references to a working set of objects interspersed with isolated references to less popular objects. The key idea is to avoid indiscriminate caching, and to weigh the benefits of caching an object against the cost of removing other objects. This paper describes a simple enhancement to a well-known web caching algorithm (GreedyDual-Size) to make it a selective algorithm. It is shown by simulation that the performance gain can be substantial. The suggested methodology can be applied to similar algorithms.