SOLVED

Fixed Number Random Sample - What are the solutions?

Go to solution
Highlighted
Level 5 - Champion

Fixed Number Random Sample - What are the solutions?

Hello,

I wonder if anyone came up with better ideas on having a fixed number of random sample? There are several ideas (e.g. ) and discussions, but nothing seems working very well for me. In general, when you have a big database or list and you need to run it via webhook, or a data management campaign, or some testing, it would be tremendously helpful to be able to throttle and queue it. Thus only fixed number of records will be treated a day. That is what I came up with:

  1. I tested flow steps: random sample 10% > action; wait 1 day; random sample 10% > action, wait 1 day, etc. This did NOT work, only the first flow step was executed.
  2. I tested recurrent daily smart campaign with random sample in the flow step, so only 10% will be treated every time the campaign runs (there was a reference to exclude those who have been treated). This somewhat worked, but the size of batches varied from zero to several dozen thousands, so it didn't help a lot.
  3. Basically, the only consistent way is splitting into lists manually (might be too painful or not viable at all with big numbers).
  4. Shall I try to run a recurrent daily smart campaign with a random sample in the smart list? (No advanced filters, but can make it a try).

With randomizing and splitting into lists, I found helpful the following:

  • If I need to have 0.1% random sample (less then 1%, while the filter accepts only 1-100), you can do 1% random sample, add to a static list, then do one more 1% random sample of the list.
  • I've done quite a lot of randomizing based on last name characters and creation date.
    (Do you know an average percentage of people in US who have last name starting with R? Well, I do )

What do I miss? Are there better scalable solutions for randomizing and throttling?

Thank you,

Helen

1 ACCEPTED SOLUTION

Accepted Solutions
Highlighted
Level 10 - Community Moderator

Re: Fixed Number Random Sample - What are the solutions?

The only way to randomly sort people into a fixed number of buckets is using a webhook that uses a hash-bucket algorithm.

(This is much simpler than it sounds, since modern programming languages already support the necessary functions in a couple of lines of code. The point is you can't do it with Marketo alone.)

View solution in original post

4 REPLIES 4
Highlighted
Level 10 - Community Moderator

Re: Fixed Number Random Sample - What are the solutions?

The only way to randomly sort people into a fixed number of buckets is using a webhook that uses a hash-bucket algorithm.

(This is much simpler than it sounds, since modern programming languages already support the necessary functions in a couple of lines of code. The point is you can't do it with Marketo alone.)

View solution in original post

Highlighted

Re: Fixed Number Random Sample - What are the solutions?

Hey Sanford,

Do you have any examples using the hash-bucket method you described in webhooks in Marketo that I can reference?

Thanks

Floyd

Highlighted
Level 5 - Champion

Re: Fixed Number Random Sample - What are the solutions?

I would very appreciate that as well.

Highlighted
Level 10 - Community Moderator

Re: Fixed Number Random Sample - What are the solutions?

Here's an example from one of my instances:

pastedImage_0.png

(Not allowed to post any more than that given Community rules.)

Each call responds with a bucket # between 1 and numBuckets.

The SHA1/truncate/modulo logic can be translated to pretty much any language. This is also just one of many algorithms you can use for such things, but they all have the same technical objective: hash the input and use the result-modulo-number-of-buckets to choose that person's bucket.