This paper studies an M[x]/G(a, b)/1 queuing system with additional optional service, multiple vacation and setup time. After completing the first service, the customers may opt for the second service with probability α or leave the system with probability 1 ‒ α. After completing a bulk service, if the queue size is less than 'α', then the server leaves for a vacation of random length. When he returns from the vacation, if the queue length is still less than 'α', he leaves for another vacation and so on. This process continues until he finds at least 'α' customer in the queue. After a vacation, if the server finds at least 'α' customer waiting for service, he requires a setup time 'G' to start the service. After this setup, he serves a batch of ξ customers (a ≤ ξ ≤ b). Using supplementary variable technique, the probability generating function (PGF) of the queue size, expected queue length, expected waiting time, expected busy period and expected idle period are derived. Numerical illustrations are presented to visualise the effect of system parameters.