Google 维度关系不正确的分析跟踪事件

Google Analytics Tracking Events With Dimensions Incorrect Relations

我正在尝试跟踪具有 3 个维度(用户 ID、小部件 ID、post ID)的事件。每个点击事件都必须有自己的行,其中包含唯一的 post ID、用户 ID 和小部件 ID,以便我可以跟踪每个 post 的点击次数。额外:所有维度都设置为'user'的范围。

ga('send', 'event', 'widget', 'click', 'uwp', 
                        {
                            'dimension1': $user_id,
                            'dimension2': $widget_id,
                            'dimension3': $post_id
                        }
                    );

我稍后使用报告查询 api。

$result = Analytics::query(
                $start_date,
                $end_date,
                'ga:totalEvents',
                array(
                    'dimensions' => 'ga:dimension3,ga:pagePath,ga:date,ga:eventAction',
                    'sort'       => '-ga:date',
                    'filters'    => 'ga:eventAction==click;ga:eventLabel==uwp;ga:dimension1=='.$user->id,
                    'max-results'=> '100'
                ));

结果不正确,所有点击都被捆绑到 1 个维度中,即维度 3 post ID。 例)如果我点击 id 30 的 post(dimension3 设置为 30)和 id 10 的 post,它将报告 id 30 的 post 有 2 次点击或更早的点击id 有 2 次点击。

Google 分析仪表板精选:

正如您从选择中看到的那样,我有 1 行 post ID 为 2 次和 7 次点击,但我发送的事件具有许多不同的 post ID。 (维度 3 == post id)。

这里的问题是您将所有这些维度设置为具有用户范围。因此,每个维度对每个用户只能有一个值。这对于用户 ID 维度没问题,但对于像 post id 这样的维度,这可能是不正确的。据推测,一个用户可以查看许多 post 个 ID。将 post id 设置为用户范围将导致每次看到新的 post 时 post id 值被最新的 post 覆盖(这就是为什么只有一个值出现在你的报告中)。相反,您需要将 post id 设置为具有命中范围,这将允许在每次事件命中时发送不同的值。

你可以change the scope via the interface.

详细了解 custom dimension scope