For T:Cop×C→D, an end is a universal object E with maps eC:E→T(C,C) satisfying T(1C,f)eC=T(f,1D)eD for every f:C→D. Every other such family factors uniquely through E. For small C in a complete category, it is the equalizer of the two maps ∏CT(C,C)⇉∏f:C→DT(C,D).