Как мне сделать такое ценообразование, чтобы и мне хорошо было и заказчика устраивало?
Какую бы цену вы не поставили, она не будет устраивать всех в мире клиентов. Фокусируйтесь на такой, чтобы она вас устраивала, а при должном уровне работы, будут находиться клиенты на любую цену.
Также очень интересует, как быть в случае появления каких то багов..
Брать деньги за их исправление, разработки без исправления багов/рефакторинга не бывает.
Делаете ли вы какие то скидки может или акции для заказчиков и т.д.
Это не рынок, какие скидки? Наоборот, постоянные клиенты должны регулярно повышать оплату или накидывать бонусы, если вы хороший разработчик конечно же. Иначе уйдете, а ему потом опять среди индусов и школьников искать толкового чувака месяцами.
Вообще не парьтесь об этом. Если клиент настроен на короткое сотрудничество, никакими гипнозами не заставите его стать постоянным. Если качество вашей работы будет соответствовать или превосходить его требования, ему незачем будет искать другого исполнителя на возникшие в будущем подобного рода задачи. В конце проекта, можете сказать ему что-то типа: "Обращайтесь, если понадобится помощь, да и ещё я умею то-то и то-то".