In this work we define contingency logic with arbitrary announcement. In contingency logic, the primitive modality contingency formalises that a proposition may be true but also may be false, so that if it is non-contingent then it is necessarily true or necessarily false. To this logic one can add dynamic operators to describe change of contingency. Our logic has operators for public announcement and operators for arbitrary public announcement, as in the dynamic epistemic logic called arbitrary public announcement logic. However, our language primitive is the more suitable notion of public announcement whether, instead of the public announcement that. We compare the expressive power of our logic and its various fragments to related dynamic epistemic logics. We further present an axiomatisation and show its completeness by adapting a method to demonstrate completeness of arbitrary public announcement logic. Various extensions are also shown to be complete with respect to the corresponding frame classes.