适应环境的生物更有可能生存和繁殖。然而,自然选择不会导致完全适应的生物。有几个因素限制了自然选择。
首先,自然选择只能作用于现有的遗传变异。假设,红色的象牙可以通过阻止寻找象牙的偷猎者来提高大象的生存能力。然而,如果没有红牙的基因变异或等位基因,自然选择就不能增加红牙的患病率。等位基因必须首先存在或通过突变产生。
权衡也限制了自然选择。虽然红色象牙的等位基因可以防止偷猎,但它也可能使象牙变脆,对战斗和觅食没有多大用处。
基因组水平上的权衡存在,因为自然选择作用于个体而不是等位基因。同一染色体上的相邻基因通常是相互连接和遗传的。如果红色象牙的等位基因与导致不孕的等位基因一起遗传,红色象牙可能会消失,因为遗传组合弊大于利;
中间性状也可以限制自然选择。想象一下,大象有三种不同的象牙:传统的、红色的象牙和介于两者间的玫瑰粉色。玫瑰粉色象牙可能会像传统象牙一样被偷猎者觊觎,也可能像红色象牙一样易碎。中间表型的危害性可能会限制大象种群从传统象牙向红色象牙的过渡。
虽然自然选择通常会提高种群的生存和繁殖能力,但其它进化机制可能会产生相反的效果。有害的等位基因可以通过迁移(即基因流)或偶然事件(即基因漂移)如自然灾害引入和清除。进化不是走向完美的运动,而是种群压力综合作用的结果。