In a public good provision setting, motivating agents to reveal their true tastes is essential for social welfare. This paper shows that the principal can always design a mechanism to make collusion nonprofitable for agents in the case of collusive contracts offered by a third party, from one agent to the other agent or one agent delegation. The principal could prevent collusion at no cost and realize the second-best social welfare outcome when agents’ types are uncorrelated. However, when agents’ types are positively correlated, the principal needs to pay some cost to prevent collusion. In a laboratory experiment, we check agents’ collusive behaviors. Our mechanism helps agents reveal their true types and prevent collusion effectively. When contracts are offered exogenously, fairness is agents’ top consideration to accept or reject the contracts. Nevertheless, when agents can design their contracts, they consider more on their own benefits.