In this Chapter we discuss a novel decentralized adaptive strategy to synchronize complex networks. We present two alternative strategies. A vertex-based method where each node assigns an adaptive coupling strength to all its incoming links and an edge-based one where mutually coupled nodes negotiates their strengths according to the mismatch between their output functions. Proof of asymptotic stability is given using an appropriate Lyapunov function. The theoretical results are validated on a set of representative examples: the synchronization of a network of Chua’s circuits and the consensus of a network of integrators.