Although sympatric character divergence between closely related species has been described in a wide variety of taxa, the evolutionary processes responsible for generating these patterns are difficult to identify. One hypothesis that can explain sympatric differences is ecological character displacement: the sympatric origin of morphologically divergent phenotypes in response to selection caused by interspecific competition. Alternatively, populations may adapt to different conditions in allopatry, with sympatric distributions evolving through selective colonization and proliferation of ecologically compatible phenotypes. In this study, I characterize geographic variation within two sibling species of rocky-shore gastropods that have partially overlapping distributions in central California. In sympatry, both Nucella emarginata and N. ostrina show significant differences in shell shape and shell ornamentation that together suggest that where the two species co-exist, divergent phenotypes arose as an evolutionary consequence of competition. To examine the evolutionary origins of divergent characters in sympatry, I used a comparative method based on spatial autocorrelation to remove the portion of the phenotypic variance among populations that is explained by genetic distance (using mitochondrial DNA sequences and allozyme frequency data). Because the remaining portion of the phenotypic variance represents the independent divergence of individual populations, a significant sympatric difference in the corrected dataset provides evidence of true character displacement: significant sympatric character evolution that is independent of population history. After removal of genetic distance effects in Nucella, shell shape differences remain statistically significant in N. emarginata, providing evidence of significant sympatric character divergence. However, for external shell ornamentation in both species and shell shape in N. ostrina, the significance of sympatric differences is lost in the corrected dataset, indicating that colonization events and gene flow have played important roles in the evolutionary history of character divergence in sympatry. Although the absence of a widely dispersing planktonic larva in the life cycle of Nucella will promote local adaptation, the results here indicate that once advantageous traits arise, demographic processes, such as recurrent gene flow between established populations and extinction and recolonization, are important factors contributing to the geographic pattern of sympatric character divergence.