- Rigidity of Vedic religion: There was undue emphasis on sacrifices and rituals, which became more elaborate and expensive.
- Caste system and domination of Brahmanas: Brahmanical texts laid emphasis on a person’s caste or gender to determine a person’s position. On the other hand, Jainism and Buddhism emphasised on individual agency. Men & women could strive to attain liberation from trials and tribulations of world existence.
- Emergence of new social and economic groups: During this period India was witnessing second urbanisation and flourishing trade and commerce. This led to the rise of new social classes such as gahapatis and setthis. These people were in general not brahmins. These people were not satisfied with the vedic prescriptions which made them subservient to brahmins. Hence, these new social classes patronised Jainism and Buddhism.
- Use of Vernacular language: Jainism and Buddhism preached in the language of the masses. Jainism was preached in the popular language Prakrit written in Ardhamagadhi script. Buddhism was spread in Pali language. This made the message of these religions accessible to the masses. One the other hand, Vedic religion was taught and preached in Sanskrit which was accessible to only a small fraction i.e., mostly to the Brahmanas.
- Tradition of debates: There was a culture of debate and discussions where teachers from different religious affiliations tried to convince laypersons and one another about the validity of their philosophy. Debates took place in kutagarashala (a hut with a pointed roof) or in groves where travelling mendicants halted.