This question already has an answer here:
I've been trying to create a 400m buffer in a polygon layer in QGIS 2.18 and it seems like I may be doing something wrong compared to how the tool used to work.
Does the tool still use the units of the CRS?
When I try to create a 400m buffer or even a 10m buffer I end up just getting a large buffer that definitely isn't either one of those distances. I'm going to Vector->Geoprocessing Tools->Fixed Distance Buffer and setting things as follows in the screen shot. GeoJSON is in EPSG2768.
Seems like the buffer tool wasn't using the defined CRS units for my layers. Checked the output buffer layer and it was using WGS84 instead of EPSG2768. CRS for the project and all the layers was set to EPSG2768. Things didn't work until I changed the CRS for the buffer layer and then re-ran the buffer tool. I set up a couple virtual machines to test things out with mixed results. Fresh Xunbuntu VM with QGIS installed and the buffer tool worked right off the bat, but a fresh KDE Neon VM with QGIS had the same issue I initially posted about. Things are working now though.