First of all, make sure you have enabled this option in "Settings" - "Automatically add free product to cart":
Also, please check the note near this field:
"This only works with Buy X Get Y rules when all properties of a free product are known - specific product or specific variation must be selected."
This means that you need to make sure that for your Buy X Get Y rule (NOT Buy X Get X!):
1. You set specifically full discount for this, for example, "percentage discount" - 100.
2. You need to set specific product/variation in "GET", not some category, tag or attribute. Only the product, and it should be only one per such rule. Please note that "Buy" and "Get" products should be different!
Please note that if product is "Simple" type, you will need to select "Product", but if it's "Variable", you can't just add this as product in general, you need to select the specific variation, otherwise it will not be added in cart.
1. Auto-adding the free product after specific "subtotal" amount IS NOT SUPPORTED.
2. Whenever the quantity of the "BUY" product will be changed in the cart, the quantity of "GET" free product WILL NOT BE CHANGED automatically.
3. Auto-adding the item that's already in cart (just like Buy X Get X rule) IS NOT SUPPORTED.
It's not currently possible to add the same product because of the possible conflicts/issues that will happen. For example, infinite loop - one product will trigger adding another one, and another, and so on. That may be possible to achieve for only adding such product once, but it will create a conflict with repeating rules, and also simple quantity change. Therefore free product is only added on "add to cart" event of another product.