Opened 5 years ago

Last modified 9 months ago

#4677 new defect (bug)

Change how 'Active Installations' is calculated on 'Popular' tab

Reported by: dannycooper's profile DannyCooper Owned by:
Milestone: Priority: normal
Component: Theme Directory Keywords:



It's generally accepted that the algorithm for the 'Popular' tab is based on two variables:

  • Time in Directory
  • Active Installations

This works well when .org is the primary distribution method, as both values start at 0.

However, some authors/companies have realised you can manipulate the algorithm by accumulating installations before uploading your theme.

So the variables look like this:

Time in Directory = 1 day
Active Installations = 10,000

Because the time in directory is so low compared to the active installations, the theme will be given an artificially high position.

It would be more accurate to include the time it took to accumulate all the installs. In which case the variables would be:

  • Time Since First Active Install
  • Active Installations

There are two possible solutions:

1) Store the number of active installations when a theme enters the directory and deduct that amount from any calculations. This would effectively reset the current variables to 0 (as they should be).


$value = $time_in_directory * ($active_installations - $active_installations_on_entry)

2) Replace 'Time in Directory' with 'Time since first active install'. I believe this would require storing the value from the Update API.

Simplified: $value = $time_since_first_install * $active_installations

Change History (11)

This ticket was mentioned in Slack in #themereview by dannycooper. View the logs.

5 years ago

#2 @SergeyBiryukov
5 years ago

Previously: #2114. Could we continue the discussion there?

Last edited 5 years ago by SergeyBiryukov (previous) (diff)

#3 @DannyCooper
5 years ago

@SergeyBiryukov The initial discussion in that ticket is a different problem (different themes using the same name). I believe a separate ticket is warranted for this issue (and the potential solutions provided).

Last edited 5 years ago by DannyCooper (previous) (diff)

#4 @kevinhaig
5 years ago

I believe the popular rating is based on:

install Count / days in directory

So Danny's suggestion would be good but using a net install count (if I may use the term ) would have to be checked to ensure it does not become negative.

Also a different thought, do the popular ranking on a weekly install basis, simple and effective. So the highest installs in a week gets the top spot.

This ticket was mentioned in Slack in #themereview by dannycooper. View the logs.

5 years ago

#6 @gouravwptech
5 years ago

I'm totally agree with @DannyCooper

This ticket was mentioned in Slack in #themereview by dingo_d. View the logs.

4 years ago

#8 @dingo_d
4 years ago

@DannyCooper have you maybe thought about writing a patch for this?

#9 @fahimmurshed
2 years ago

I'm also agree with @DannyCooper

#10 @fahimmurshed
9 months ago


Please submit a patch for this.

#11 @DannyCooper
9 months ago

@fahimmurshed I believe this would require deeper changes that only the meta team would be able to make.

Note: See TracTickets for help on using tickets.