The main reason is network traffic reduction. Because stored procedures are precompiled SQL blocks, the time of execution can be reduced. In this way the application performance is higher, being stored in the database the procedure will be called by the application and execute faster than in the case is not already compiled. They also provide reusability for different other applications.