Abstract: We consider the problem of retrieving multiple documents relevant to the single subtopics of a given web query, termed “full-subtopic retrieval”. To solve this problem we present a novel search results clustering algorithm that generates clusters labeled by keyphrases. The keyphrases are extracted from the generalized suffix tree built from the search results and merged through an improved hierarchical agglomerative clustering procedure. Our approach has been implemented into KeySRC (Keyphrase-based Search Results Clustering), a full web clustering engine available online at http://keysrc.fub.it. We discuss how the keyphrase-based clustering algorithm can be used not only for browsing through the clustered search results but also for producing a re-ranked list of results emphasizing the diversity of top hits. Using a novel measure for evaluating full-subtopic retrieval performance, called “Subtopic Search Length under k document sufficiency”, and a test collection specifically designed for evaluating subtopic retrieval, we found that our approach was able to discriminate between the different subtopics present in search results in a very effective manner, with a clear improvement over other subtopic retrieval systems. In particular, browsing through KeySRC clusters was the best method to retrieve more documents per subtopic (i.e., k>1), whereas using the re-ranked list formed from KeySRC clusters was more effecive for retrieving just one document per subtopic (i.e., k=1).