-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Goals with custom props (settings+filtering UI integration) #5977
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
90d802d to
e861beb
Compare
|
0f70963 to
79098c7
Compare
3398dd5 to
0daac2f
Compare
c14f5a7 to
ded06ef
Compare
…pair - Add input and dropdown class attributes to combobox. - Adjust combobox dropdown within a property pair to overflow to max the width of the property pair container, with help of container-type:inline-size. - Ensure trash icon wrapper is hidden when icon is hidden. - Add title attribute to option when it is being truncated.
- Improve `Upgrade` CTA in list and turn it into a link - Improve `Upgrade` CTA tooltip copy to make it more clear what happens with locked goals on the dashboard - Add disabled (faded) styling to icon button and toggle switch - Move disabled styling to toggle only in goal form - Add `link_class` attribute to `upgrade_call_to_action` component in order to override link color when displayed inside tooltip - Add `Business` pill to goal form to make it more obvious that the feature is locked, and make it a link to the billing page - Improve prop styling inside tooltip in goal list to make it more readable and ensure truncation when prop is long
ded06ef to
4a39634
Compare
...e_web/controllers/api/external_stats_controller/query_goal_custom_props_equivalence_test.exs
Show resolved
Hide resolved
lib/plausible/stats/goals.ex
Outdated
| goals = | ||
| site | ||
| |> Plausible.Goals.for_site(include_goals_with_custom_props?: props_available?) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nitpick, non-blocking: I think the error emitted to Stats API users may be a bit misleading if we do it this way. It will say that the requested goal doesn't exist, even though it does, just is unavailable.
{
"error": "Invalid filters. The goal `...` is not configured for this site. Find out how to configure goals here: https://plausible.io/docs/stats-api#filtering-by-goals"
}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We can update the documentation once this is live and state that goals with custom props might become unavailable in Stats API, if subscription does not cover props. Settings web UI will make that clear. cc @metmarkosaric
Changes
This PR implements full capability of managing goals with custom props via site settings + filtering the dashboard.
The PR builds upon #5978, #5944, #5946, #5952
Billing states, such as Props feature unavailable are handled with appropriate CTAs.
Preview env: https://pr-5977.review.plausible.io/
Documentation update + changelog entry pending.
Additionally, we'll prohibit editing existing revenue goals currency.
Sample screenshots:
record-2026-01-19-11-03-52-blob.ayes.cuba.mp4
record-2026-01-19-11-11-28-aunt.ribs.nora.mp4
Tests
Changelog
Documentation
Dark mode