We study optimal dynamic contracting for a firm with multiple workers where compensation is based on public performance signals and privately reported peer evaluations. We show that if evaluation and effort provision are done by different workers (e.g., consider supervisor-agent hierarchy), first-best can be achieved even in a static setting. However, if each worker both exerts effort and reports peer evaluations (e.g., consider team setting), effort incentives cannot be decoupled from truth-telling incentives. This makes the optimal static contract inefficient. Relational contracts based on public signals increase efficiency. Interestingly, the optimal contract may ignore signals that are informative about effort