What are some strategies and tips to reduce customer acquisition costs? Lets assume you have found that SEO, PPC, display ads, and lead generation are the four channels that work best for you. How can you optimize them so that you're spending less money to acquire customers?
Typically, the 3 channels that you listed (lead generation isn't a channel) would have a different effectiveness and ROI for you and you would pursue those channels that offer you the lowest cost per acquisition. You don't have to use every channel that exists - you try many in the beginning and then chose those that work for you at a given stage (can change overtime). There is no such thing as the best channel for everyone.
Typically, advertising has a short lead generation cycle where some other strategies like SEO, email or content marketing, webinars, etc. will have a longer cycle but might be more cost-effective in the long run.
In early stages, you need customers to validate your learning and advertising with small budget works for that, even if ROI is terrible. As you grow and have some revenue and resources to spend you might choose some of the long-term tactics that are very cost effective - developing free content to grow your email subscriber list and boost social shares, etc.
TIP: Make sure you are attributing leads correctly - tag all your sources/campaigns with custom URL parameters, so all leads/sales/conversions are attributed to the right channels and campaigns. Don't rely on automatic detection by Google Analytics or you will get incorrect results.
You'll get much more useful answers if you ask again with more specifics about your situation. But two big factors I'd suggest that apply over the channels you mentioned are:
1) Targeting - Poor targeting can drive up your customer acquisition cost by:
2) Disqualification - when you're a cash & time-constrained startup, if you're paying in money or effort on a per-action basis, it's better to pay a little more for fewer actions that are much more likely to convert, than it is to pay for more actions that are much less likely to convert. Help people disqualify themselves from taking actions you have to pay for or follow up on if they're not going to convert.
That means doing things like mentioning price or product limitations in ad copy. You can still frame them positively (e.g. if your social media management tool doesn't support team use yet, say you're the best tool for independent / solo social media managers).
In lead generation forms, asking a single more qualifying question (budget size, job title, company size) can both help you prioritize, and help tire-kickers disqualify themselves. You don't want to make it harder for everyone to complete forms -- keep them simple and short -- but have something in it that helps you avoid chasing leads that aren't going to go anywhere.
Do better at targeting & disqualifying, and you'll reduce CAC by wasting less of your time & budget, and getting conversions more easily.