What I expect to happen is for the funnels tab to finally be fixed because every few days another problem pops up and it feels like this is being neglected and as if Roblox are putting patches on it instead of solving the entire core problem with it
Hi:
Sorry causing trouble for the funnels.
I am checking the data you are sending from our backend. I notice some patterns:
almost every player repeatedly sending same steps back and forth. For example a user can finish step 8 and then go back with a lot of step 4 and 5. I am not sure if it is intended. It is not a general pattern. If you are trying to count the number of players did the operation like your step 4 (Hit Player), maybe custom event is a better option.
The custom field 1 you are using I guess is place version? This is not a deterministic field as the next time when a player comes back to play further steps, you might have your experience updated. I see many players populate events at step 1-3 with version A but later on with step 4-7 with version B. This causes the system confused with how to properly compute the rate when you apply this filter.
We will try to improve the flow. Meanwhile you can consider a different way of tracking custom field or try to look at the data more than 48 hours ago which we use a more robust data pipeline to correct the data.
Wait are you saying logging onboarding events multiple times for some steps is messing up something? Because I thought that I don’t have to take into account multiple firings of these events by the same account because it should only account once per player.
Yes it’s place version, I’m using this to get the most recent and relevant data from the recent changes I’ve done to the experience. It’s a really useful tool Idk why it’s not implemented as default. Oh yeah I guess that can potentially happen but in this case wouldnt that count as the last steps completed anyway in the new version? Though I guess for the old version it would look like they dropped off (unless u look at both versions at the same time). Well I guess it’s not that critical if you’re just doing this after updating all servers and trying to look at short term data.
One problem I’ve noticed (made another post about it yesterday) is the names aren’t updating properly, if I select most recent versions with different namings it would show me mixed names and old names so it’s another problem to be fixed
For example in these versions first step is logged as “Joined Game” then “Left Spawn” Then “Casted Spell” then “Casted Spell (Teleported)” it’s a mix of old names and new names up in here
Yes it will be deduped. I just pointed it out in case you did not know that and the recommended way of collecting some data like this might be custom events so you can get count. Definitely if you think is what you want you can keep it this way.
You are right this user will be counted in the new step. The filter you have for older version might trigger some weird behavior as people joining the game in different game servers, some might have rolled out new version but some might have not yet. So it is possible the user is logging data with step 8 on version A, step 9 on version B then step 10 on version A back. This is naturally possible due to how game server rolls our new place versions. I am still trying to find a way to improve this flow if possible.
The name change is because some users might still in older version game servers populating old names. This will result us randomly picking one because we do not know which will be the name you want to use as from our system we do not know which is before and which is after. So if you select a time range that some data populated with old name and some data populated with new name, it will randomly pick one and have an annotation below telling there is name change.
I would suggest wait enough time when all the data are populating new names. And from there the name of the funnel should look correct.
Nope, that ought to be fixed I have no servers using old names anymore and with the version filtering it should show me the new relevant names and it doesn’t. Please fix this.
Like look what’s going on for me, this is the newest version and it has mixed names from the names from yesterday. 1 should be Joined Game 2 should be Left Spawn 3 should be Casted Spell 4 should be Casted Spell (Teleported), these new names were applied yesterday and this data is very recent and servers were all updated to use new names yesterday
Hi:
This is an expected behavior because we do not know what the filter is for. The filter won’t be applied to fetching display name on the step because if we do so, there is a high chance after filtering, the data points which meet the filter will be too few that cause some step name is missing. For example you apply a filter that is only available for 1 player and this player directly jumps to step 5, then step 1-4 will be empty value.
So our behavior will be only applying filter on metrics but not the display value to make sure the name can be populated as much as possible. With your special case it might cause the names still shows the old ones. Maybe you could create a brand new funnel to have the fresh data.
I don’t really understand the conflict here. Even if the filter was something else than place version, if for the specific filter the name should be 1 thing why isn’t it that 1 thing. Like I don’t see the sense in using names from yesterday when the filter only exists for data that exists during the time the name was what I intend it to be
Also for your example wouldn’t it be the names used already by the filter? Like why 1-4 would be empty, like if its the first player thats using the new names sure the data won’t be known yet but isn’t there some caching going on so every time we get a log for a specific step with that filter we know what the step name needs to be? The empty value in the case where the name is unknown could be the old name until its replaced no?
May I know when the name change is published exactly?
Our last 1 day counts from 8/11 12am so it might be still before the time the name is changed.
Regarding your question. I am not sure if I understand correctly, the reason we do not know the name is because the name is only based on the event sent to the system.
Back to our example, if there is a filter applied and this filter only gets 1 player back. This player only did step 5, then step 1-4 is not known so there is no value populated. We cannot say for step 1-4 we do not apply filter to pull a generic value, but step 5 we apply filter to fetch the name that this player’s event populates.
So to be consistent, we decide not to apply any filter when fetching display name. Hope you understand it as we could not have a universal solution for all different cases from different experiences.
How is it deciding exactly which name to use? Like shouldn’t it just use the latest name used to log the step? And if a filter is used the same just with filter taken into account? Like if I named my step 1 “Left Spawn” and then changed it to “Joined Game” shouldn’t it show as “Joined Game” the moment a new event is sent for step 1 with that name?
If the name is not known for step 1-4 shouldn’t it just use the latest name used by these steps without the filter? and as more people use the filter and log in more steps use the name they used?
Well my problem with this is that its hard for me to track and understand short term data, one of the reasons I use versions is to understand what recent changes are doing for the funnel and the waiting time is too much of a hassle, it’s also annoying how it only updates once an hour
Totally understood. We know during the development stage changes can happen very frequently so it might take time to get reflected.
We recently changed our funnel update from once a day to once an hour. We will continue looking to make it more frequent meanwhile keeping the availability as publishing more frequently might be challenging for handling experiences who have millions users online.
We are exploring solutions like allowing creators pulling raw data directly and build their own dashboard, which might solve your problem fundamentally.
As the question about why it cannot reflect the latest name immediately, we will see if there is any improvement we could do to improve the current name selection strategy. Sorry for the inconvenience here.