Abstract: A method and system for generating best performing data models for datasets is disclosed. The method includes obtaining input dataset from external data sources. The method includes dividing dataset into three parts based on type of data variables and data samples. The method includes retrieving data modelling methods from a database and generating first set of data models for the first part of the dataset. The method includes determining first fitness function for the first part of the dataset based on the first set of data model. The method includes generating second set of data models for the second part of the dataset and determining second fitness function based on the second set of data model. Further, the method includes determining best performing data model among the first set of data models and the second set of data model. Additionally, the method includes outputting the best performing data model.