Identifying coordinate bonds
The first thing needed for a dative bond is a lone electron pair in one atom and an empty orbital in another atom.
This condition is necessary but enough.

There is also a formula that fails in many cases but may sometimes become handy:
Formal Charge = (Oxidiation State of the centeral atom - 8 + Digit of its group number)/2

e.g.: For SO3 it would be: (6-2)/2 Which means that it has 2 co-ordinate bonds.
However for a compound like NH4+ it won't work.

Of course, safest way is to find out how the compound had formed in the first place.
e.g.: If we know that BF3 + F- made BF4-, we would find out that F- had shared with B two of its electrons, filling the empty orbital belonging to B.