1、自然因素:自然环境的变化是引起社会流动的一个重要原因,由此引起的社会流动多半是空间上的流动,调节着人口和资源的重新分配。自然生态的变化虽然较缓慢,但也会引起一个地方的人口逐渐迁出或迁入;
2、人口因素:人口是生活在自然环境之中并依靠自然资源而生存的。若人口密度超过资源的承载力,必引起人口的向外流动。。当一个地区的人口自然增长率过高或过低,就会产生人口的压力或吸引力,于是出现人口流动。
3、社会因素:从一定意义上讲,引起社会流动最根本的原因来自社会。社会原因概括起来表现为:社会价值观,它是引起社会流动的一个重要原因。价值观念的转变,会改变人们的流动方向。