Karlie here from the Shopify Guru Team! There are actually a few different ways to implement this type of functionality into your storefront. Your first option would be to use the 'Discounts' section of your Shopify Admin. The Discounts section would allow you to create discounts for your customer based on a fixed value or percentage, free shipping discount, or even by creating a Buy X Get Y discount.
The discount you would want to use is the Buy X Get Y option. This option would allow you to set a certain amount or number of items your customers would need to buy in order to receive the free item.
To create a Buy X Get Y discount you would want to head into your Shopify Admin> Discounts section. From here, you will want to select Create discount. In this section, you will want to enter a name for the discount. Then, in the Options section, select Buy X Get Y. This guide will go into detail about how to adjust and create discounts in your Shopify Admin.
Another option would be to use an app. I've gone ahead and grabbed a few that I think would be worth a check out. Be sure to look into; Free Gifts by Secomapp, Bold Sales Motivator and Freebies by Brickspace Lab.
I hope this helps, but if you have any further questions - be sure to ask and I would be happy to help!
Thanks for the great explanation. Here is a question, though: is it possible to set a minimum cart value in order to trigger the GET Y discount?
It seems that you can only specify a quantity of product(s) X in order to GET Y but we'd like to have customers purchase ANY product, no matter how many, but once they reach a threshold of $XYZ, they get the Y product for free.
The Upsell app by Autoketing has one flaw: you cannot define the maximum number of free gifts the user can add. They can add 100 free gifts!
I ended up using Upsell by Bold but it has one major flaw also: if customers meet the requirements and add the free gift to their cart, they can then delete the other required products and end up with just the free gift in their cart.
It doesn't make any sense that the "Minimum purchase requirements" for a specific collection or product is limited to that specific collection or product. If I want to offer a 100% discount on a specific product based on the cart total, I can't do it. (not without using an expensive 3rd party app) This needs to be fixed!