On m'a demandé de vendre le code source (avec les utilisateurs existants) de la petite application utilitaire que j'ai créée il y a des années. J'ai étudié comment mettre un prix sur le code source, mais jusqu'à présent, je n'ai pas trouvé de bonne solution.
J'ai cherché sur le net, mais je n'ai rien trouvé d'utile. Ensuite, je suis tombé sur quelques autres qui ont également vendu leur code source avec des utilisateurs, mais leurs prix semblent irréalistes. Par exemple, une personne a calculé le prix par utilisateur à environ 200 $. Il avait 80 utilisateurs et a fini par vendre la source avec des utilisateurs pour 30 000 $. Comment a-t-il trouvé ce prix?
Puis-je trouver un bon prix avec cette formule:
(nombre d'utilisateurs x prix de l'application) + (prix de l'application x nombre de nouveaux utilisateurs en un an)
?
Si c'est une bonne formule, comment calculez-vous le prix d'une source qui n'a pas encore d'utilisateurs?
Vendre le code source d'une application ressemble beaucoup à vendre une entreprise.
La formule standard est price = revenue * 3 + assets
.
La multiplication de 3
Est un facteur d'offre et de demande. Plus une entreprise a d'acheteurs, plus le multiplicateur est élevé. Lorsque nous entendons parler d'une entreprise achetée par ABC Corp dans les nouvelles, c'est souvent pour une grande figure. Ces entreprises peuvent avoir un multiplicateur de 5
Ou plus.
Pour les entreprises qui n'ont pas d'historique revenue
, elles dépendent d'une évaluation. L'évaluation est une estimation des revenus projetés et le multiplicateur est appliqué à cela.
Nous pouvons donc calculer le multiplicateur pour votre exemple;
1.875 = 30000 / 16000 = 30000 / (200 * 80)
En supposant qu'il ait vendu toutes ses licences en 1 an, il (votre exemple) aurait un multiplicateur de 1.875
Sans actifs supplémentaires. Ce n'est pas une très bonne affaire pour le programmeur. Surtout lorsque vous tenez compte des futures mises à niveau de ces utilisateurs qui augmentent les revenus.
Pourquoi n'est-ce pas une bonne affaire?
L'acheteur peut récupérer ses frais en moins de 2 ans. La plupart des gens mettent plus de temps à rembourser un prêt auto.
Lorsque nous parlons à l'acheteur en termes de fixation d'un prix, nous discutons de la durée pendant laquelle l'acheteur souhaite récupérer son investissement et commencer à profiter de son achat.
Vous dites I'm giving up this source code, and its future revenue to you
. Le prix est fixé sur la base d'une estimation de ce que serait l'avenir.
Si vous n'avez reçu aucun revenu de votre code source, vous devrez discuter avec l'acheteur de ce que sera l'évaluation de ses revenus futurs.
La partie la plus difficile de faire ce genre de chose pour la première fois est vraiment psychologique - il y a une très forte tendance à penser à ce que cela vous coûte en heures de travail, ce qui est généralement extrêmement inexact quand il est fait rétrospectivement et ignore le "je n'étais pas assis à un bureau mais je pensais à cet algorithme toute la journée ... "et d'autres détails généraux, etc.
J'aimerais donc vous inviter à changer votre cadre de perspective en utilisant une analogie: vous n'avez plus d'application, vous avez un widget en acier. Vous y mettez des choses, et les choses sortent de l'autre côté, et ce que cela fait aux choses qui entrent ont amené diverses personnes à s'habituer à avoir votre widget autour. À ce jour, vous venez de donner votre widget gratuitement parce que quelqu'un vous a donné l'acier gratuitement, donc cela ne vous coûte rien.
Maintenant, quelqu'un veut vous acheter le concept et la base d'utilisateurs de votre widget.
Tout d'abord, pourquoi veulent-ils l'acheter? S'il s'agit d'une entreprise, la réponse est "de gagner de l'argent". Soit ils améliorent un produit existant qu'ils ont et souhaitent accroître la fidélité et offrir un avantage qu'ils pensent pouvoir vendre plus d'exemplaires, soit ils veulent éviter de résoudre un problème qu'ils ont et ainsi réduire les coûts ou concentrer leurs propres efforts sur d'autres choses. Ils peuvent également souhaiter que vos utilisateurs soient des "prospects chauds" potentiels qui, selon eux, pourraient être intéressés par leur produit et pourraient être inhabituellement susceptibles de leur acheter des produits.
L'équation pertinente:
Price Paid = (Buyer's Perceived Value - Seller's Cost) * Negotiation
Donc, si cela ne vous coûte rien (vous avez déjà fait le travail sans attente de salaire) et que cela leur vaut 100 000 $, vous payent-ils 1 $? Ou 99 000 $? 50 000 $? Tout est question de négociation - essayer de déterminer où se situe le prix final entre le maximum qu'ils paieront et le minimum que vous accepterez.
Parfois, la négociation est tellement bizarre que les gens paient trop cher, et parfois les gens vendent moins que le coût. Ce sont des cas Edge, et donc nous les ignorons - mais oui, ils existent. Je veux engager les négociateurs d'Instagram pour tout ce que je fais;)
Alors d'abord, que vaut-il pour eux? C'est de loin la chose la plus difficile à savoir, et une tactique consiste à leur demander clairement. Je sais, fou non?
Tactique de négociation super secrète
"Je suis un homme raisonnable - qu'est-ce que ça vaut pour toi?" ou "Quel est votre budget pour ce type d'acquisition?" Vous seriez étonné de voir combien de fois les gens vous disent tout simplement. Ils pourraient ne pas vouloir marchander, et s'ils veulent juste faire leur travail et acheter quelque chose chez vous et continuer leur journée, ils pourraient simplement vous dire: "Nous avons environ 50 000 dollars dans le budget pour des acquisitions comme la vôtre, et le vôtre est relativement petit par rapport à certaines des autres choses que nous achetons, nous avons donc pensé que 5-10k serait raisonnable compte tenu de l'achat direct que nous demandons. " Ou "Nous avons pensé qu'il nous en coûterait environ 4000 $ en dépenses pour le faire nous-mêmes, c'est donc le plus que nous paierions en toutes circonstances", ou simplement "Nous cherchons à conclure cet accord à environ 3000 $."
Et puis vous décidez si cela vous convient et si vous voulez le pousser ou le prendre. C'était dur? En négociation, il est presque toujours très important que vous ne devez pas être le premier à nommer un prix - donc s'ils proposer un prix alors vous avez une base de référence que vous pouvez accepter ou argumenter. Mais ils pourraient ne pas nommer de prix, et nous devons voir si ce prix est raisonnable de toute façon.
Il existe quelques systèmes comptables pour déterminer la valeur de quelque chose, et c'est ce qu'une entreprise rationnelle utilisera pour déterminer un budget pour acheter votre petite `` entité '':
Coût
La valeur est ce qu'il en coûte, peut-être avec une dépréciation annuelle. Il s'agit de la forme de comptabilité la plus courante au monde, et elle indique littéralement "la valeur est ce qu'il en coûte pour l'acheter, diminuant avec le temps". Sérieusement - cela coûte ce qu'il en coûte. Pas très utile pour nous ici, mais c'est vrai.
C'est ce que les gens essaient de faire en déterminant les heures de travail, mais je vais vous donner le résultat: cela n'a pas de sens dans le logiciel. Vous pouvez travailler 40 ans sur un million de lignes de code avec un taux de 50 $ l'heure et le résultat vaut 0 $. Vous n'êtes pas indépendant ou n'acceptez pas un contrat pour construire quelque chose à un taux horaire, et vous ne l'avez pas fait "sur devis" dans l'espoir de le vendre pour récupérer vos dépenses. C'est psychologiquement agréable, mais tout à fait dénué de sens dans le contexte de l'achat et de la vente.
Coût de remplacement
La valeur de quelque chose est ce qu'il en coûterait pour le remplacer. Cela peut être facile avec des produits de base, comme demander "quelle est la valeur d'une nouvelle Ford Focus?" Mais ce n'est pas si facile dans un logiciel, car cela peut être comme les mathématiques - une seule formule d'une ligne pourrait prendre un siècle à découvrir si vous ne le connaissez pas déjà. Ou ce qui vous a pris 10 heures pourrait prendre 100 autres personnes - ou peut-être que cela ne prendrait qu'une heure.
Il s'agirait donc d'essayer d'estimer ce qu'il en coûterait pour avoir un remplacement pour votre widget construit qui ne viole simultanément aucun de vos droits en tant qu'inventeur. En regardant les lignes de code/complexité/difficulté de votre application, vous obtiendrez une gamme allant de "peut-être un mois pour un prototype qui est faible en bogues si une personne qui sait ce qu'il fait y travaille" à ... qui sait. Cela ne doit pas être trivial ou ils ne vous offriraient pas d'argent du tout.
S'ils ont leur propre équipe de développement, leur estimation de le faire eux-mêmes est peut-être très raisonnable. Mais ils ne veulent pas - ils ont des choses plus importantes à faire avec leur temps. Ils devraient attendre des mois pour commencer, ou ils devraient embaucher quelqu'un - et qui sait s'ils peuvent livrer ou si ce sera juste une perte de temps et d'argent? Il y a tellement de risques!
Vous avez les marchandises MAINTENANT, et cela a une valeur spéciale. Profitez-en.
Comps (abréviation de "comparaisons")
C'est ce que font d'autres choses. Par exemple, si cette entreprise est habituée à acheter des applications/utilisateurs/code source, ils peuvent dire: "Eh bien, ce widget est plus facile à créer que le SuperWidget que nous avons acheté le mois dernier pour 10 000 $, mais la sortie n'est pas aussi commercialisable que notre DeluxeWidget que nous avons achetée l'année dernière pour laquelle nous n'avons payé que 5 000 $. " Alors peut-être qu'ils pensent qu'une valeur comparative se situe entre 5 000 $ et 10 000 $, et peu importe si vous avez un million de lignes de code ou 10, ils n'ont pas besoin de savoir ou de se soucier.
C'est ainsi que la plupart des biens non marchands sont vendus (comme l'immobilier). C'est un excellent système, et c'est ce que vous tentiez de rechercher, mais sur ce marché (logiciel) il y a très peu de données publiques, donc vous êtes désavantagé d'être dans l'ignorance à ce sujet. Comprenez, cependant, ils ont probablement plus de données à ce sujet que vous, et cela fait probablement partie de la façon dont ils calculent ce qu'ils veulent vous payer.
Système de revenus multiples (ventes projetées)
Comme Mathew Foscarini l'a souligné, il s'agit d'un système utilisé pour évaluer les propriétés immobilières commerciales et commerciales.
L'idée est que vous avez un actif qui génère un revenu. Par exemple, un immeuble à appartements coûte 50 000 $ par an en loyer. Ensuite, il y a un multiple appliqué, qui est basé sur le système comp (mentionné ci-dessus), disons 10. La valeur marchande de cet immeuble est donc le montant du loyer qui peut être collecté, sur la base des taux d'occupation et de loyer actuels, sur 10 ans = 500 000 $. Bien sûr, si vous augmentez les loyers et améliorez l'occupation l'année prochaine pour obtenir un loyer supplémentaire de 10 000 $ par an, votre propriété vaut soudainement 100 000 $ supplémentaires - et donc pourquoi tant de riches (et de personnes en faillite, bien sûr) sont impliqués dans l'immobilier.
Ce système peut être appliqué aux logiciels, mais si votre application n'est pas commercialement viable individuellement, il est difficile de le faire. Avec votre exemple de 80 utilisateurs payant 200 $ chacun, cela signifie que si une entreprise peut convaincre ces mêmes personnes d'acheter une nouvelle version (ce qui est beaucoup plus facile que de vendre à des inconnus), ou convaincre une petite partie de leur plus grande clientèle d'acheter 80 copies, c'est un rapide 16k $ pour peut-être envoyer une explosion d'email et envoyer un mémo à votre personnel de vente.
Les bonnes entreprises établies ont estimé la valeur à vie des utilisateurs, et si ce nombre est élevé (comme, par exemple, les acheteurs d'Adobe de Creative Suite), alors payer 30 000 $ pour récupérer un seul nouvel utilisateur ou conserver un client existant était une excellente idée.
La première étape consiste à "leur parler". Renseignez-vous sur leurs besoins, pourquoi ils sont intéressés, quel besoin cela leur apporte-t-il, apprenez-en autant sur eux et ce qu'ils veulent que possible. C'est être un bon vendeur (pas un vendeur de sleazebag) - apprenez à connaître votre client.
Peut-être achètent-ils pour revendre. J'ai demandé à des gens d'acheter mon code parce qu'ils avaient un contrat où ils étaient censés faire quelque chose qui faisait ce que mon code faisait déjà. Si leur contrat total était de 500 $, le maximum qu'ils allaient me payer était "moins que cela". J'ai demandé et ils m'ont dit à peu près comme ça. Parfois je n'étais pas intéressé (ça ne valait pas la peine pour moi pour ce prix, ou j'étais trop occupé), parfois je leur donnais juste le code gratuitement, et parfois je les acceptais sur leur offre pour faire un peu de l'argent supplémentaire sur le code que j'ai déjà écrit et que je pourrais continuer à utiliser.
Peut-être qu'ils veulent redéfinir/réutiliser l'application et la vendre comme leur propre produit. Peut-être qu'ils veulent l'ajouter à un menu de leur logiciel existant. Peut-être qu'ils ne se soucient pas beaucoup de l'application, mais veulent que les utilisateurs et l'application soient un bonus gratuit donné aux acheteurs de leur prochaine version. Peut-être que cela sera compilé dans leur propre code source et que l'application existante sera 'abandonnée' mais la fonctionnalité sera disponible dans leur application maintenant ... etc, etc, etc. Je pourrais faire des trucs toute la journée, mais la seule moyen d'avoir même une idée vague est Just Ask. Même s'ils mentent, peu importe, vous avez appris quelque chose!
Parfois, ce sont des entretiens d'embauche en quelque sorte et ils voudront acheter vos services à l'avenir, peut-être qu'ils veulent juste un widget pour leur éviter les ennuis.
Le diable est dans les détails, et ils comptent. Conservez-vous des droits sur le code? Souhaitent-ils même que vous cessiez d'utiliser/supprimer toutes les copies du code et de l'application de votre choix? Veulent-ils simplement une licence pour utiliser vos trucs et leur "transférer" le nom et les utilisateurs et ils se moquent de ce que vous faites après cela? Souhaitent-ils un soutien continu, une consultation et, dans l'affirmative, qu'est-ce qui est approprié pour vous contacter et quand?
S'ils doivent faire des demandes futures de votre temps et de vos efforts, c'est le bon moment pour offrir quelque chose comme "x heures de soutien dans la transition/interprétation, alors je suis disponible à $ Y par heure après cela." Soyez intéressé, soyez professionnel, soutenez-vous - ne vous donnez pas votre temps et votre travail parce que vous avez oublié de clarifier et de mettre les choses par écrit.
En théorie, le prix serait déterminé par l'effort requis pour créer l'application. Si une seule personne a travaillé pendant deux mois sans interruption (c'est-à-dire y compris les week-ends) pour créer l'application et que le prix horaire moyen d'un pigiste de cette compétence (moins toutes les taxes) est de 200 $/heure, 200 × 8 × 30 × 2 = 96 000. Cela signifie que l'on peut vendre cette application pour 96 000 $.
En pratique, le prix est déterminé par la demande. Si personne ne veut le code source de votre application, vous pouvez le donner gratuitement, cela ne changera rien. D'un autre côté, si une entreprise avec beaucoup d'argent s'intéresse énormément à votre application, le prix augmentera en conséquence.
Si vous êtes face à face avec un acheteur potentiel qui est fort en négociation et qui a un effet de levier sur vous (par exemple, l'acheteur est une entreprise qui a suffisamment de potentiel pour réécrire votre application à partir de zéro; vous, en revanche, avez un besoin urgent d'argent) , alors le prix peut chuter à l'extrême.
Le fait que le prix soit déterminé par la demande signifie également qu'il implique une large gamme de paramètres, certains étant totalement indépendants du code source:
Le code est-il de haute ou de basse qualité?
Existe-t-il une bonne documentation?
Est-il écrit en utilisant des normes et des pratiques reconnues internationalement?
Utilise-t-il des bibliothèques tierces populaires?
Y a-t-il un support?
Le code est-il facile à implémenter dans d'autres applications?
L'infrastructure (contrôle de version, système de suivi des bogues, déploiement en une seule étape, etc.) est-elle correctement configurée et peut-elle être facilement réutilisée?
L'application est-elle suffisamment testée?
Est-il révisé par paires?
Est-il suffisamment commercialisé?
Est-il bien présenté? Un site Web dédié réalisé par des designers professionnels présentant de nombreux aspects du code source en tant que produit sera inévitablement utile.
etc.
Un autre point important est de savoir exactement ce qui est vendu. Il existe un certain écart entre vendre le droit de tirer parti de l'application en vendant des licences aux clients et vendre le droit de faire tout ce que l'acheteur veut faire avec le code source. Selon la formulation précise du contrat, le prix peut varier considérablement, car dans un cas, l'acheteur ne pourra presque rien faire, alors que dans d'autres cas, il pourra générer d'énormes profits. Encore une fois, il s'agit de pure négociation, semblable à la négociation dans tout autre domaine.
Comme d'autres réponses l'ont souligné, la demande du produit est le critère essentiel, mais cela est très difficile à établir. Un moyen plus simple de déterminer la valeur du produit consiste à calculer ce qu'il en coûterait pour le réaménager. Si le vôtre est le seul exemple de ce type, c'est ce contre quoi vous seriez en concurrence: le coût pour le vendeur de développer le programme lui-même (ou de payer pour qu'il soit développé). Je n'essaierais pas nécessairement de le vendre à ce prix, mais il pourrait être considéré comme une limite inférieure.
Il y a eu quelques études sur le coût total qu'il faudrait pour développer une base de code à partir de zéro, impliquant principalement des lignes de code. Voir par exemple: http://en.wikipedia.org/wiki/COCOMO , ou ici pour un exemple concret.
La valeur du code source n'est pas nécessairement liée au coût de production.
La valeur réelle est un pourcentage de valeur pour l'entité qui a l'intention d'acheter le code source.
Si le code source produit une valeur de 75 000 $ pour une entreprise, le coût pourrait être un pourcentage de 75 000 $. Peut-être 15 000 $ à 30 000 $ + selon vos compétences en négociation.