Tuesday, December 22, 2015

Brightfunnel Gives B2B Marketers Self-Service Revenue Attribution

Marketing without revenue attribution is like playing golf without keeping score: it might be fun but you can’t tell whether you’re doing a good job. But while keeping score in golf is simple, figuring out the impact of marketing programs is quite tough. In fact, B2B marketers face several challenges on the road to perfect attribution.  The simplest is just connecting marketing leads to closed sales, which is an issue because the data in sales systems is often incomplete.  A higher level ties specific marketing programs to individual leads, and through them to accounts and deals. The most advanced efforts estimate the relative impact of different marketing programs on the final result.  The problems must be solved in sequence: you must connect leads to revenue before you can connect marketing programs to revenue, and must connect all programs to revenue before you can start to allocate credit among them.

Brightfunnel compares results of different attribution methods


Most marketers struggle to get past the first level. There wouldn’t be a problem if sales people religiously associated every lead with the right account. But this doesn’t always happen for many reasons. So marketers must either accept that they’ll miss some connections, do laborious manual research to make the right matches, or rely on specialized software to do the work.

This is where Brightfunnel comes in. Brightfunnel reads lead, account, and opportunity data from Salesforce.com and supplies missing connections based on things like company name. Since Salesforce.com can also capture lead source (i.e., original marketing program), Brightfunnel can build a complete chain linking marketing programs to leads to accounts to opportunities. The system also has connectors to bring in data from Oracle Eloqua and Marketo, marketing automation, which will often include marketing programs and leads that never made it into Salesforce. But Brightfunnel says that most clients work with Salesforc data alone.

Making connections is certainly important, but Brightfunnel also provides tools to use the resulting information. Marketers can analyze results by marketing program, time period, customer segment, or other variables. They can compare performance over time, compare specific programs against an average, and see top campaigns by lead source. Because the imported opportunity data includes sales stage, reports can also track movement through the sales funnel, calculating conversion rates and velocity (time to move from one stage to the next). The system can use this to forecast the value and timing of future sales from deals currently in the pipeline.

What about that third level of attribution, splitting revenue from a single sale among different marketing programs? Brightfunnel offers two varieties of multitouch attribution: one where credit is shared evenly among all programs that touched a lead, and one where credit is split according to a fixed formula of 40% to the first touch, 20% to middle touches, and 40% to the final touch. Brightfunnel can also show first-touch and last-touch attribution, which attribute all revenue to the first or last touch, respectively.

Attribution aficionados will recognize that none of these is a fully satisfactory approach. The gold standard in attribution is advanced statistical methods that estimate the true incremental impact of each program on each lead. Brightfunnel is working on such a method but hasn’t released it yet. In the meantime, the simpler approaches give some useful insights – so long as you don’t forget they are not wholly accurate.

The value of Brightfunnel is less in advanced analytics than in the fact that it does the basic data assembly and lets marketers analyze data for themselves.  Without a tool like Brightfunnel, detailed analysis often requires technical skill and tools that few marketers have available.  .

Brightfunnel was introduced in 2014 and has something under 100 clients. Pricing runs from $35,000 to $80,000 per year based on system modules and number of users. The amount of data doesn’t matter. Clients are mostly mid-sized tech companies – the usual early adopters for this sort of thing. The company raised $6 million in Series A funding in October 2015.

Wednesday, December 16, 2015

Future Marketing: Will Machines Take Over Half the Consumer Economy?

‘Tis the season for predictions. I’m not going to plague you with any new ones right now, but did want to expand a bit on the long-term vision I’ve been talking about in speeches and described briefly last July as “robotech”. The gist of this is that people will increasingly delegate day-to-day decisions to computers, meaning that most purchases will be based on machines selling to other machines.  (If you want a real-world example, think how search engine optimization already boils down to “selling” content to the Google ranking algorithms).  In this world, consumers still have choices but what they’re deciding is which machine to trust – in exactly the same way that you decide whether to let Google or Bing or something else be your primary search engine.

The key word in that sentence is “trust”.  People won’t want to double-check each action by the agents they delegate to buy their groceries, pick their restaurants, book their hotel rooms, arrange their transportation, and do other boring daily tasks. The chart below shows in more detail how I think current trends lead to this conclusion; I won’t bore you by walking through it step-by-step.



One question worth asking is, how much of the economy is likely to be affected by this change? After all, nearly all B2B purchases are already part of a larger relationship rather than isolated transactions. On the consumer side, large sectors like banking, insurance, health care, and housing are also governed by long-term contracts.

The table below shows a crude attempt to find an answer.  Using Census data, classified each industry as B2B or B2C, and then split B2C between sectors that are already purchased through long-term relationships and those that will move to such relationships in the future. (I did actually have a category for those that will remain transactional, but that column ended up blank.) Industries that sell to both business and consumers were split 50/50.  I told you this was crude.



As you see, I decided that about 55% of the U.S. economy is B2B. The remaining portion is split evenly between sectors that are already sold through long-term contracts and those that will make that transition in the future. The bulk of the change will happen in the retail sector, where I think nearly every purchase will be based either on a direct subscription – such as contracting with a dealer to service your car rather than buying each repair individually – or an indirect subscription – such as having an automated travel agent pick the best airline, hotel, rental car, and restaurants for each trip. You might question some of my choices, but let me point out that even the clothing industry – where people theoretically want to make individual choices – is already seeing subscription business models where companies send products they think the consumer might like and the consumer can then keep what she wants. 

These figures are intended to give some weight to my otherwise vague assertion about the shift from transactional to relationship buying. If literally half the consumer economy is at stake (and the other half has already made the transition), that is surely worth paying attention.

Wednesday, December 02, 2015

Automated Marketing Campaigns: An Immodest Proposal

I wrote last June about replacing traditional multi-step campaigns with a system that tracks customers through journey stages and executes short sequences of actions, called “plays”, at each stage.  The goal was to approach the perfect campaign design of “do the right thing, wait, and do the right thing again”.

I still think approach makes sense but it suffers from a major flaw: someone has to define all those stages and all those plays. This limits the number of actions available since it takes considerable human time, effort, and insight to create each stage and play. Ideally, you’d let machines evolve the stages and plays autonomously. But while it’s easy for conventional predictive models to find the “next best action” in a particular situation, it’s much harder to find the best sequence of actions. This is why you can find dozens of automated products to personalize Web sites but none to automate multi-step campaign design.

The problem with multi-step campaigns is the number of options to test.  These have to cover all possible actions in all possible sequences at all possible time intervals. Few companies have enough customer activity to test all the possibilities, and, even if they did, it would take unacceptably long to stumble upon the best combinations and cost unacceptable amounts of lost revenue from customers in losing test cells.  In any case, available actions and customer behaviors are constantly changing, so the best approach will change over time – meaning the system would need to be constantly retesting, with all the resulting costs.

I’ve recently begun to imagine what I think is a solution. Let’s start with the problem that’s already solved, of finding the single next best action. You can conceive of my perfect campaign as a collection of next best actions. But a solution that merely executed the next best action for each customer every day would almost surely produce too many messages. One solution is a model that predicts the value* of each potential action, rather than simply ranking the actions against each other. This lets you set a minimum value for outbound messages. On days when no action meets this threshold, the system would simply do nothing. A still better approach is to explicitly consider “no action” as an option to test and build a model that gives it a value – presumably, the value being higher response to future promotions. Now you have a system that is organically evolving the timing of multi-step campaigns – and, better still, adapting that timing to behavior of each individual.

But what about sequences of related actions (i.e.,“plays”)? Let’s assume for a moment that the action sequences already exist, even if humans had to create them. This turns out to be a non-issue: if the best action to take with a customer is the second step in a sequence, the system should find that and choose it.  If some other action would be more productive, we’d want to system to pick that anyway. The only caveat is the predictions must take into account previous actions, so any benefit from being part of a sequence is properly reflected in the value calculations. But a good model should consider previous actions anyway, whether or not they’re part of a formal sequence. At most, marketers might want to stop customers from receiving messages out of order.  This is easy enough to design – it just becomes part of the eligibility rules that limit the actions available for a given customer.  Such rules must exist for any number of reasons, such as location, products owned, or credit limit, so adding sequence constraints is little additional work.  In practice, the optimal sequence for different customers is likely to be different, so imposing a fixed sequence is often actively harmful.

So far so good, but we haven’t really solved the problem of too many combinations. This requires another level of abstraction to reduce the number of options that need to be tested. When it comes to timing, initial tests of waiting for random intervals between actions should pretty quickly uncover when it’s too soon for any new action and when it’s too long to wait. This can be abstracted from results across all actions, so the learning should come quite quickly. Once reliable estimates are available, they can be used in prediction models for all possible actions. Future tests can be then limited to refining the timing within the standard range, with only a few tests outside the range to make sure nothing has changed.

The same approach could reduce other types of testing to keep the number of combinations within reason. For example, actions can be classified by broad types (cross sell, upsell, retention, winback, price level, product line, customer support, education, etc.) to quickly understand which types of actions are most productive in given situations. Testing can then focus on the top-ranked alternatives. This is relatively straightforward once actions are properly tagged with such attributes – or machine learning discovers the relevant attributes without tagging. Again, the system will still test some occasional outliers to find any new patterns that might appear.

Incidentally, this approach also helps to solve the problem of sequence creation. Category-level predictions would show when a customer is likely to respond to another action within a given category. If the system is consistently running out of fresh actions in one category, that’s a strong hint that more should be created. Thus, a sequence (or play) is born.

So – we’ve found a way for machines to design multi-step sequences and to reduce testing to a reasonable number of combinations. You might be thinking this is interesting but impractical because it requires running hundreds or thousands of models against each customer every day or possibly more often. But it turns out that’s not necessary. If we return to our concept of a value threshold and assume that time plays a role in every model score, then it’s possible to calculate in advance when the value of each action for each customer will reach the threshold. The system can then find whichever action will reach the threshold first and schedule that action to execute at that time. No further calculations are needed unless the model changes or you get new information about the customer – most likely because they did something. Of course, you’d want to recalculate the scores at that time anyway. In most businesses, such changes happen relatively rarely, so the number of customers with recalculated scores on any given day is a tiny fraction of the full base.

None of the concepts I’ve introduced here – value thresholds, explicitly testing “no action”, sharing attributes across models, and precalculating future model scores – is especially advanced. I’d be shocked if many developers hadn’t already started to use them. But I’ve yet to see a vendor pull them together into a single product or even hint they were moving in this direction. So this post is my little holiday gift – and challenge – to you, Martech Industry: it’s time to use these ideas, or better ones of your own, to reinvent campaign management as an automated system that lets marketers focus again on customers, not technology.

_______________________________________________________________________
* Value calculation is its own challenge.  But marketers need to pick some value measure no matter how they build their campaigns, so lack of a perfect value measure isn't a reason to reject the rest of this argument.