Create buffer in meters?

In step 4, you have to change the CRS from NAD83 to another projection that uses metres as units.

It depends on the extent of your data which one is best. Unfortunately, your data is located all over the world, so you could:

  1. Create a custom CRS using aeqd (or tmerc) for each one, and draw just that one buffer with it. Practically, you only have to create the buffer once, and exchange the CRS information in the .prj and .qpj file. The coordinates of the buffer with respect to its center will always be the same.
  2. Group the data according to the UTM zones, and use the UTM CRS of that zone for those points.
  3. Similar to UTM, group your points into zones of latitude (e.g. every 10 degrees), and create custom Lambert conformal conical 2SP CRS for each group. This will be significantly faster than using all northern and southern UTM zones of the world.
  4. Use pseudo mercator EPSG:3857 for all. The buffers will look like nice circles, but the real size will get smaller and distorted the more to the poles you come.

Fast and dirty way: use a buffer distance of 0.01° per km. That is the mean degrees per km at 37° lat. and distorts N-S and E-W buffer extent. But it may be accurate enough for your purpose.