TLDR; I am bootstrapped solo founder, started my SaaS a couple months ago, ~10 customers are using my product for ~50$/month and today I had a call with a multi-billion dollar company who wants to use my product. I have somewhat of a blue ocean niche product and they expressed their deepest interest in using my SaaS.
As you might have already thought, they require some customization (most of it is on the roadmap anyway) but then also a couple of extra security measurements such as SSO and that the data can't be shared on a database with other customers.
The are very well aware of the fact that I am probably not able to handle this alone and let me know that they know the value of what would need to be done. The also acknowledged that the current pricing plan won't work for them and essentially they are willing to pay $$$$$$
Sounds a bit like a shift to a service company rather than a product company to you? Well, to me it does. I have read the entirety of this great HN thread (https://news.ycombinator.com/item?id=14071025) as well as this https://m.signalvnoise.com/dont-let-anyone-overpay-you/ and I ended up with very mixed feelings:
One the one hand this could potentially skyrocket the reputation of my SaaS, let alone allow me to work full time on my own dream company. There's even another large-sized company that basically couldn't sign up due the exact same security concerns.
On the other, it comes with a seemingly high responsibility, would mean I have to contract some developers, change my sole prop to a limited and in the end they could decide to churn anyway. Moreover, I have by no means the funds to pay for the development upfront. I think that the company is aware of that and it seems like they would sort of support me through it but I have no idea how this would legally work and is just guesswork.
What would you do in my position? Appreciate every piece of advice!
IMO, if they want your product this much, they should have no problem paying you up front, at least enough to hire help. I'd only hire help on a contract / temporary basis, because this whole deal could blow up in your face at any time, and because they are much larger than you, you can't do anything about it, even if you have a contract.
I wouldn't release source; too easy to steal and you have no leverage.
What I have often done with large customers (Ford, IBM, others) is to charge an hourly rate to help develop a project plan, including milestones with dates and payments you both agree on as well as acceptance criteria for each milestone. As you meet milestones, they pay you. That way if they decide to back out, you have at least been paid for the work that's been done.
Also make it clear in the contract that any work you do remains yours and they don't own anything.
Good luck!
A short PS: I have had billion dollar companies try to screw me over more than once, so plan for that possibility. Sometimes you can take a hard line - "Yes, you will honor our contract through blah, blah, blah. You can cancel it after that but not before." - and sometimes that works (it did for me once) and sometimes they just ignore you. Going after them legally is almost never practical, so don't think just because you have a contract, you are protected. Make your milestones short, like a month or two - no longer.
No, Ford and IBM never screwed me over. They were both great to work with.
I just don't have any idea what the condition of the contract will be and where I have to be very cautious... The source code thing is great advice.
The charging on an hourly rate sounds interesting and new to me.
Also, this is not the first time I have read that multi-b companies screw over small rising startups. Sounds horrible but as you said – nothing to do about it.
You can negotiate terms that are important to you on a contract. Start with the most important changes you want to make, because at some point they may get impatient and just say "Okay, now we need you to sign this", because they will get sick of having to deal with their own legal department.
For example, there was a clause in my contract about indemnifying them. Guess what - I was not in a position to indemnify IBM if Ford decides to sue them because of my work. So yeah, stuff like that I had struck from the contract. If they had said I had to agree to it, I probably would have stuck to my guns and said no, because it was so absurd. Another option would be to get umbrella insurance, but I was too dumb to know that then (I was 29).
I think a key thing is that you understand the contract. If you don't understand something, ask them and/or do some research or hire some legal help until you are comfortable with it. At some point, you either trust them or don't, because in the end, they have all the money and power and you are at their mercy. Keep that in mind.
From what I have read, this is more the norm than the exception. Small businesses routinely think they have it made in the shade and have won the small business lottery because some big company is interested in them. In reality, it's often much more like "You my bitch."
This is not advice. It's just an observation.
A detailed project plan is something that both sides have to agree on. The project manager gave me guidance on IBM's expectations but it was up to me to define the "Statement of Work" and I defined the milestones so that there was one every month or two. It was their idea to do this part on an hourly basis. For one thing, the group that was putting my contract together didn't have it ready, so the only way I could work was hourly. A project plan was their requirement, not mine.
Doing a project plan for a fixed cost is doable too. The bottom line is, don't work for free unless you want to. If they want a project plan for a big project but won't pay for your time to put it together, that would be a huge red flag for me and I'd probably pass. If you are the one that requires the project plan, that's a little different and I could see where a customer might balk on paying for that.
That does not necessarily mean it is the wrong choice - if you are not growing otherwise, and this is a path to keep it alive, it makes a ton of sense. But if you are growing and these guys are just a jumpstart to bigger ARR, it might be a mistake.
As for what I would do - I'd simply tell them that they are more than welcome to become a customer, and that you certainly will take their needs into consideration when prioritizing your roadmap.
Rephrased: In other words tell them to accept your terms, as your current customers pay in total 500/month and you are not willing to customize your product paid by the hour for a market rate.
My take: Think hard how much your independence is worth and how much you are willing to move in another direction because of money. Big companies might want to create long(er)-term contracts and there might be a lot of money in it for you (which you then can use to improve your SaaS). But it also has its downsides, as you will spend time [in exchange for money] for something you probably did not intend in the first place.
You can do two things from here:
1) Accept those features as valid needs for potential future customers. Prioritize them in your roadmap however you see fit.
2) Have a dialogue with their security team, asking why those policies are in place, and showing them alternative ways you solve their concerns.
I will put out a word of warning - if you let your product decisions be driven by whatever cost you a sale, or what the sales team believe will make a future sale, you are now being driven by short-term sales goals, not by a long-term view of what your customer base needs. Going to massive efforts to make one sale is almost never the right answer.
If it will help you get by I'd advise you to charge 4-10x more than you think is right and make them pay yearly up front, and don't count on future revenue.
Also get a contract in place ASAP. You might have to take maybe some unfavorable terms (source code in escrow, insurance, etc...) to get money up front, but on the other hand the overall money could be more than worth it.
Also I would focus on integrating SSO with their company first, that way they can get it in the door and running on their network so you can get feedback ASAP. F500 companies are notoriously annoying on the security side of things running on their networks.
Perhaps off-topic, but could you elaborate on how SSO allows them OP's Saas to run on THEIR network? I imagine SSO would just allow the company to log in to the OP's Saas using company's email address (or something similar)... but the Saas will still run on OP's network (the cloud?)
If you're running it on the cloud, than the customer has to have an SSO exposed for your app's login to hit it. The reason SSO is important is that if people are terminated SSO can be updated instantly to reflect that and instantly remove access to critical data.
Checkout something like FaunaDB where multi-tenancy is a first-class citizen and is very much designed for social frontends that run on disperse company networks with tricky auth/role escalation. In fact, if a backend is really not needed much at ALL it is the perfect DB as it can work without one. But I'm bias since I want to work with it more.
If I were you I'd go ahead and establish the LLC, and then just see if the client wants to move forward. If they do, there's no shame of hiring a few contractors on to help you get to where you want to get to. If they don't, then you still want an LLC
I have an LLC, and I'm well aware that I'll probably never make a dime on my side project. I just have no interest in commingling my personal and business finances.
Overall I'd definitely go for it
That being said, I am seriously thinking about setting up my company in another country with a more appealing legal entity structure. Either the US or Estonia (EU E-Residency). Appreciate your advice here as well!
Concerning LLC be careful that there are double taxation treaties and that you first find an accountant who specialises in running a LLC from Ger/Aut. Otherwise you’ll pay twice in tax + high fees for the extra paperwork the accountant needs to do locally.
I personally had a look at having a UK Ltd run from Austria, there are plenty of companies specialising in that (just google UK Ltd Österreich/Deutschland). Not sure to what extent that’s still possible post Brexit.
All in all, especially if the big company is willing to pay upfront, I would personally go for a GmbH, might be more expensive to set up but saves you troubles in the long term I think.
Having said that, I’m only a programmer myself, please don’t rely on my advice here, definitely talk to a local accountant about that, they usually have a free consultation to get started.
In my case, there was an intermediary company and they loaned me the money needed to build the product and took it out of the future revenue. But a large company can advance you money or help you get a loan. Your job is to come up with a plan to do what they want and a price that makes it worth your time and ensures that you are around to support them in the future.
Some things come to mind: 1. It is hard to keep the product generic if you are serving a large client. I couldn't do it. It might be easier for you if the product lends itself to selling 'seats'.
2. Find out how established your sponsor is at the company before investing too much effort in this deal.
Have they made purchasing decisions like this? Who would have to sign off on this deal? Does it help
them with one of their top 3 goals for the year? Just because you are talking to someone from a big
company that doesn't mean they can actually write you a check.
3. Get a copy of their MSA (master services agreement) and make sure they not expecting ownership
for derived work.
4. Everything costs x3 and takes x2 as long as you think it will. Always does. Plan accordingly.
5. Don't hire a business guy to run the business. It's your baby -- change the diapers yourself. It
really isn't that hard and you can hire consultants to do finance and legal. If you need sales,
think lead-gen. You personally will close every sale at this scale.
6. Hire someone who's entire job is to do client management. Get someone good and pay them a lot.
Build that into your price.
I personally love the small businesses that the startup community looks down on as 'lifestyle' businesses. Most startups are like rock bands. They toil in obscurity and fail. And then you and your baby get sold for pennies to pay back the investors....
Assuming you want to go the small business route, figure out what you think you need to run the business if they were your only client. Convert the roadmap into full-time heads and estimate what it would take for them to hire about a generic consulting shop to recreate what you are doing from scratch. Make sure each head is $20K/mo. Add 50% as a buffer. Your biggest risk is underpricing.
Then tell that you'd love to focus on them and it would cost you that amount to do it. Walk them through it. Talk about how it is less risky and faster to partner with you. See if it lines up with what they are willing to pay.
They may ask for ownership. If they do, ask why they want it? Being the largest client gives them more control than a 10% stake. If they insist, offer a 10% stake for the price you quoted to build it and reduce the ongoing price by 30% because the investment replaces the 'buffer'.
...
And a few more business/practical things that you might not know:
1. You need a C corp if you want to raise money. C corps are controlled by a board. An LLC is controlled
by a managing partner. You want one or the other and you don't have to spend a bunch of money to set it up.
On one business, I used generic paperwork from Techstars, Carta to manage the ownership, and a
registered agent to keep my government filings up-to-date. Took maybe 2 days and costs < $1K/year.
2. Once you get any scale, you have to pay yourself as an employee and report that as income. I think you
can get away with not claiming income at first but the IRS wants its share. Use a payroll service -- do
not write a check for labor directly, even your own.
3. If you have discrete chunks you can hand you, consultants can work. Finding good consultants is hard.
I personally favor direct hires because you get their full attention.
4. Make sure to have all employees/contractors sign an agreement that gives you clear ownership of the IP.I would set your pricing around a proposed move to the US so you can ask for money at US labor prices. If the move doesn't work out, you've got the contract priced right at least. Or I would inflate the number of heads you think you need to get to the same place.
Make it low-risk for you. Make it worth your time even if the contact disappeared overnight because your sponsor gets fired. The easiest way to do that is charge enough that you always have a year of expenses in the bank.
The key point is to justify your costs against their costs to replicate and then get a contract that doesn't pay you for your time.
Not sure if it's the language barrier but could explain again what you mean with "I would set your pricing around a proposed move to the US so you can ask for money at US labor prices" ?
the data can't be shared on a database with other customers
FWIW, this is pretty standard boilerplate security language in a lot of domains (it was in healthcare, for sure) - but it's not always a hard requirement.Dig into their threat model: exactly how much separation do they really need? Partitioning the data into a different DB at rest doesn't mean much if your admin APIs can access both DBs.
It’s a standard request for our big clients. Everyone wants single tenancy.
We don’t offer it to anyone at all.
We still service many of the biggest players in our industry.
Edit: I should say, some things are separate for everyone. Most things are shared resources and we don’t bend on that. It’s relevant to our ability to scale with no real notice.
"If you take extra funding and hire people just to meet their needs, you no longer have a SaaS. You are writing a custom product for this large customer, with explicit permission to try to sell it to other people too. But this big player will be driving everything, as if you do not do what they say, they can walk and your business collapses. That does not necessarily mean it is the wrong choice - if you are not growing otherwise, and this is a path to keep it alive, it makes a ton of sense. But if you are growing and these guys are just a jumpstart to bigger ARR, it might be a mistake."
=> I realized that I can easily build the features myself and don't need to hire extra staff. I might need one contractor that could do some last-step safety checks but that's it. In terms of building extra features just for them: Besides the enterprise standards such as SSO and the apparent need for data isolation all the other requested features are on the roadmap.
My business right now is not really growing anywhere and this customer could essentially spark the engine. The reason for this is that there's actually another almost equally as large company that wanted to use my app but had to decline for the exact same lack of enterprise features (mainly the security part)
What I am concerned about is that they want some sort of support plan and an SLA which all seem intimidating at first glance as I have no idea how to properly price it so that I am not a slave just to their needs, you know?
Unless this is at a high hourly rate, with a cap on number of hours, I'd be worried.
> ... and an SLA
A Service Level Agreement -- with penalties for non-performance? Sounds like a path for demanding whatever they want from you, under threat of litigation.
From your earlier comment: "there's actually another almost equally as large company". Consider approaching again that company, see if they're still interested. If so, work up a plan to sell to both. Tell both you have another (large, unnamed) potential customer, and ask for advice.
Then, both will want to make sure that the other cannot get into a position to "own" you, because it would damage your ability to respond to their own needs.
I would also evaluate both companies for risk of replacing your product with some "clean-room" re-implementation of their own.
Bona fides of my own: None, except that I'm building a SaaS with a similar business profile.
Perhaps consider bringing in help if you can land this, and congrats.
and thanks!!!
One being an “Enterprise” license which you charge anywhere between $500-$5000/month.
The other being a consulting agreement which they pay $X/hr for whatever number of hours the customizations will take.
Make sure contractually you can resell any customizations to anyone else. And make sure you. And code-wise, make sure you organize their tweaks into modules which you can swap in and out.
Make sure you really understand what it is they want and how they will use your product. Our company would speak with companies and it turned out that our service wasn't exactly what they wanted, it just sounded like what they wanted. Basically the value prop wasn't understood. Or they liked our features, but really wanted a competitor feature we didn't have. In these cases we spent time across multiple teams trying to close these deals and it led to nothing.
Also, make sure you really understand all of their requirements. We spent a bunch of time speaking with one company, spent time during a trial to impress them, then at the end it didn't close because they wanted us to have a specific industry certification that we didn't have and weren't planning on obtaining. They went with a competitor.
Another problem we would run into is that we would trial with a company, then whoever our contact was would quit. Then whoever replaced them either didn't think our service was needed, or just couldn't continue speaking with us because they had to get settled into their new role.
Pricing was also an issue sometimes. Make sure you speak about it upfront. Again, we had companies not close because pricing came up at the end and they didn't want to pay.
Personally I felt like we spent too much time chasing big companies because the business side always thought closing one would open many doors. We did close some big companies and the revenue was good, but it never really led to more business.
It will also enable you to cherry pick the requirements useful to your product without affecting your core.