Add a Caption to an Image in a Google Doc

There is no built in tool for this (yet) but there is a work around, and while you can do this by using an invisible table it's a bit fiddly, and you cannot wrap text around the table, but by using a Google Drawing inside the Doc, you can, by adding a text box to the image instead, here's how.

Place the cursor where you want the image to go, and go to Insert > Drawing

Now you can either paste in an image you've copied (this might have been the image in the doc) or add one by clicking on the image icon. Then add a text box underneath—the guidelines should help assure this is aligned properly. They can format the text to their preference. WHen they're finished, just click Save and Close.

Now they can format the embedded drawing as they would an image, wrapping the text et cetera.

Voilah—the finished captioned image. To edit the caption, just double click the image, and a Google Drawing pop up window will open to allow changes to be made.

Use an invisible table

Another technique is to insert a table, add an image in the top cell, and the caption in the bottom cell. Right click anywhere in the table and choose Table properties, now set the outline to 0 pts, voilah!