If is a finitely complete category (a category with all finite limits), then it's interesting to consider a left exact functor on (a functor that preserves all finite limits). Even if lacks some finite limits, then this concept still makes sense, but it may not be the correct one. Instead we use the stronger concept of a flat functor, which may be thought of as a functor that preserves all finite limits —even the ones that don't exist yet!
A functor is flat if for each object , the comma category is cofiltered.
If is flat, then it preserves any finite limits that exist in . A partial converse holds: if has enough finite limits and preserves these, then is flat.
If is a cocomplete category and is flat, then the functor (the Yoneda extension of , i.e. the left Kan extension of along the Yoneda embedding) preserves all finite limits (and now all finite limits exist).
A similar statement holds when is a site and we extend a cocontinuous functor to . But a cocontinuous functor from preserving finite limits is (almost) the same thing as (the inverse image part of) a geometric morphism. So cocontinuous flat functors out of a site characterise (almost) geometric morphisms into . This can be very useful when a Grothendieck topos has a presentation by a particularly simple site.