Разработка современного сайта - достаточно сложный процесс, состоящий из нескольких этапов. Первым этапом обычно является составление технического задания (ТЗ) на разработку, в котором исполнитель и заказчик согласовывают предназначение, функционал и внешний вид будущего сайта. Далее, по ТЗ разработчик строит макет будущего сайта - схему в которой представлены основные необходимые клиенту блоки и описаны их взаимосвязи и взаимодействие с посетителями. По этой схеме дизайнер делает несколько вариантов набросков дизайна, из которых клиент выбирает наиболее подходящий, и далее по выбранному наброску детально отрисовывается дизайн с соблюдением всех пропорций. В зависимости от функционала может быть нарисовано несколько вариантов дизайна, если этого требует структура сайта. Далее нарисованный дизайн поступает в верстку, где он переводится в HTML формат. После чего сверстанный шаблон "оживляется" - интегрируется с выбранной системой управления сайтом, а также, в случае отсутствия в CMS необходимого функционала, программист пишет недостающий код.
Далее сайт тестируется, наполняется содержимым и предается клиенту.