Custom templates remain tied to a particular site definition (for example, the site definition for SharePoint Web sites or Meeting Workspace Web sites), so that if the site definition is not present or is changed, the custom template cannot work.
Site Definitions : As the name implies, A Site definition is "core definition of a site”. Each site definition emerges through a combination of files that are placed in the 12 hive of WFE during installation of SharePoint. Site definition files include .xml, .aspx, .ascx, and .master page files, as well as document template files (.dot, .htm, and so on), and content files (.gif, .doc, and so on).
|Files are on disk, better performance.||Files are in database, less efficient.|
|Highly customizable and extensible (XML and .NET code is much more flexible than UI)||Not easily extensible (You are limited by what UI offers)|
|Can provision multiple webs *||Can only provision one web|
|Complex to create||Easier to create|
|Requires admin access to server for deploying.||Installable from a Web UI by site owners.|
|Modifying the site definition after provisioning at least one site from it is not supported and might break existing sites.||Custom templates can be modified without affecting existing sites that have been created from the templates(**).|
Site Definitions are stored on the hard drive of the SharePoint front end servers. They are used by the SharePoint application to generate the sites. Site Templates are created by users as a copy of a site they have configured and modified so that they do not have to recreate lists, libraries, views and columns every time they need a new instance of a site.