I did a blog on this.

The key is split testing, targeting broadly within your niche, and maintaining a high relevance.
How do I achieve these results?
The trick is earning how to appeal to your audience and creating the most engaging advertisement. The best way to learn what will give you the best results is to experiment.
When I start a campaign I choose 5 images for my facebook ads, and test each with 5 different combinations of title / text. I use each image with each text combination and throw them all onto Facebook ad manager. From here I simply monitor how they perform and trim the fat until we are left with only the best performing ads. This cuts down the cost because the best performing ads have a higher click through rate and thus a lower cost per click or like.
Here is an example where I used 9 different images with the same text. You can easily see which ones performed best.
It's difficult to get something for free unless you are providing something of such quality that they will consider it. I do manual backlinking as well, but I think it is better to focus social. Look at places where you can drive targeted traffic towards your site. Groups on facebook related to your niche, pinterest / instagram comments ect. You can also look at fiverr guest posts if you know what you are looking for, as there are some gems hidden in the rough.
PM'd