@anonymous-matomo-user opened this Issue on September 18th 2012

Within the visitor log and the visitor log widget it would be great to have a delete button to delete a specific log entry.

In the detailed visitor log, I sometimes find that I have browsed my owm website from a different PC where I didn't have the opt-out cookie set.

I would like to delete single visits in case I recognize it was myself.

Keywords: Delete, Visitor, Log

@mattab commented on September 19th 2012 Member

Thanks for the suggestion. I agree it would be useful to have for debug purposes. On clicking delete, we could say "ALso delete other visits from this IP address?" and possibility to delete all tests data.

Also, we would need to call API CoreAdminHome.invalidateArchivedReports to force next archive script to re-run the archiving.

@anonymous-matomo-user commented on September 19th 2012

I would suggest to actually have 2 Delete-Buttons with different functions:

DELETE BUTTON #1 (Graphic: Standard red X) - Function: Delete this single entry from database (with NO confirmation message required).

DELETE BUTTON #2 (Graphic: Red X with integrated "IP"-Letters ) - Function: Delete all visits from this IP-address (WITH confirmation-message)

What do you guys think?

@julienmoumne commented on September 19th 2012 Member

I vote for always using a confirmation message.

Fingers can get quite slippery after a beer&burger.

If it is decided to go forward without a confirmation message, I'd suggest an undo button.

@mattab commented on September 19th 2012 Member

Yes we'll definitely keep the confirmation message, this is a "UI Pattern" in Piwik that we will continue respect (ask for confirmation before deleting anything)... :)

@mattab commented on October 27th 2012 Member

it was suggested in #3756 to be able to delete goal conversions as well, but it's non trivial since needs to update the log_visit table to remove the goal counter etc

@feluxe commented on November 6th 2014

I think it's a pity Piwik misses that feature. There are many ways to trash the stats by accident when developing. Just forget to turn off tracking once and do some cross browser testing for a week "et voila" stats are f...d and customers confused about the graphs. I have seen this and similar several times. It is sad to imagine a customer and his team looking at the graph of their project knowing that the peak of the entire curve is a mistake made by a developer. And when ever they look at it the future the false peak shall be there and nothing can be done... argh!

@Trance-Man commented on November 6th 2014

Big +1 for this request to be implemented. I have developers from around the globe sometimes logging in and testing my site, blows my stats out of the water and I can't always catch them on time, really this is badly needed as for me right now Piwik is useless due to this problem. We need to be able to open a particular date, check off items (visitors or IP's) to delete and delete them. Also an option to undo would be very smart in case of a mishap. Thank you very much for this consideration team Piwik. :) Other then this, great work thus far.

@asafyish commented on November 17th 2014


@reiherm commented on November 17th 2014


@typesetting commented on December 2nd 2014


@Trance-Man commented on January 12th 2015

I have a serious need for the deletion of many bad hits to my site, still need this implemented, my database is destroyed with bad porno site contamination from our recent discussion this past week, and no-one seems to have a solution or an answer on how I can remove the bad website. It's terrible, pointless using Piwik now as my stats are destroyed 100%.

@mattab commented on January 14th 2015 Member

Hi @Trance-Man you can delete data in this way:

  • Take a backup of your log_* tables
  • DELETE log_visit, log_link_visit_action FROM piwik_log_visit AS log_visit LEFT JOIN piwik_log_link_visit_action as log_link_visit_action ON log_visit.idvisit = log_link_visit_action.idvisit LEFT JOIN piwik_log_action as log_action ON log_action.idaction = log_link_visit_action.idaction_url WHERE log_action.name LIKE '%PORN%' should delete all visits and pageviews where the Page URL contains PORN
  • then do the two steps in this page: https://piwik.org/faq/how-to/faq_59/ (delete archive data + run core:archive command)

Then it should have cleared all visitors from your stats... let me know if you have a problem as I didn't test instructions yet

@Trance-Man commented on January 23rd 2015


OMG for such a big platform (Piwik) this is WAY TO complicated, can Piwik do this for me, JEES!
We need a 'Delete' option on logs, why the hell do we not have such a function yet in visitor logs?

There has to be an easier way! Anyone?

@DannyCork commented on January 29th 2015

It sure would be nice.

@titanic-fanatic commented on February 13th 2015

+1 from me for this feature too. I also feel there should always be a warning message ;-)

@Kovah commented on April 3rd 2015


@Trance-Man commented on April 22nd 2015

This is still... an ongoing hassle for me, does anyone have an easy way to delete a visitor yet? I need to delete visits that are repeats in a certain situation, so the first visit is ok but the 2nd, 3rd, 4th I do not want in my database of that visitor. I need to remove the 2nd, 3rd, 4th visit of this visitor or the 2nd, 3rd, 4th time this IP is showing up. Anyone? Jees. :)

@vikatskhay commented on May 4th 2015


@DannyCork commented on May 4th 2015

a lot of +1 for this item !!!!!

@Trance-Man commented on May 4th 2015


@Sija commented on May 6th 2015 Contributor


@nssnl commented on May 13th 2015


Would be really nice feature

@WilliamIsted commented on June 7th 2015

+1 with dynamic IP's this is very difficult to keep excluding your own IP. A way to clean up false data is needed.

@sgiehl commented on June 7th 2015 Member

@WilliamIsted for excluding your dynamic IP try the ExcludeByDDNS plugin

@WilliamIsted commented on June 7th 2015

@sgiehl I'll try that out, cheers

@larnold commented on June 12th 2015


@Toraih commented on July 10th 2015

based on my piwik-installs: +34

@hpvd commented on November 7th 2015

to help keeping numbers of buttons low and standardise look & feel and also the technical processes in background, there is a new ticket where this function is within the first 3 items. See #9182

@hpvd commented on November 8th 2015

integrating this feature as part of a "centralized list to store visits to ignore" #9184,
would promise some advantages:
standardized undo processes, better maintaining, staistics of deletion processes etc.

@hpvd commented on November 12th 2015

a general approach for giving the possibility to have an "undo function" is described here https://github.com/piwik/piwik/issues/9205
With this the action "deleting" is only a change of type from "standard" to "deleted".
And undo is simply changing type from "deleted" back to "standard".

@MrTrick commented on August 9th 2016

Rather than deleting visitors (and all the potential for "oh no, I didn't mean to!" drama) what about a mechanism to archive them instead? Yes, very similar to the "delete", "undo" functionality.

  1. Any "archived" visitors are not shown in any of the regular views or reports, only in a new view off the visitors log that allows mistaken records to be "unarchived".
  2. If there are backwards-compatibility concerns for plugins etc, the records could be moved to and from shadow tables.
@araviel commented on January 13th 2017

+1 too, please...

@IgitBuh commented on January 23rd 2017

+1, pretty please

@justynspooner commented on January 27th 2017


@iliassk commented on March 13th 2017


@dimdaze commented on December 17th 2017

+1 here too. A few days ago one IP address accessed some of the pages on my new website several thousand times (note to self: why didn't Wordfence block it??) and with average site accesses of only about 50 a day this has completely messed up the stats - and those cute little graphs in Visits Overview.

@JLDavenport commented on December 30th 2017

I agree I run a small site and got hit with several thousand accesses in the course of an hour. This is a needed feature.

@matomoto commented on January 15th 2018

Hello Matomos!
Are there any people here who can test something?
It is apparently possible to delete visitors via the visitorid and to adjust the stored data (visitors, pageviews).
The deletion of the visitor data via the visitorid works via a PHP script. Renewing the (unique) "visitors" and (unique) "pageviews" is possible with an existing plugin. https://github.com/innocraft/plugin-InvalidateReports
Unfortunately, I do not have the opportunity to test everything and I do not know what has to be considered.
My Delete Visitor Script is also in strong development (raw). An undo is not built-in. It would be possible for an undo to write the "deleted" data in a new database table. From there they could be written back.
Who can help and test it?

@webbr commented on February 5th 2018

+1 - this is a long awaited feature... someone shoud set up a donnation button!

@mattab commented on April 24th 2018 Member

FYI with the GDPR we have implemented the new feature to delete visits in https://github.com/matomo-org/matomo/issues/12596#issuecomment-383769449

However there isn't yet a button in the Visitor Log to provide a shortcut, but this could (should?) be done!
It will be available in 3.5.0-b2 due in a few hours

@DannyCork commented on April 24th 2018

Bit of a shame it took the pressure of GDPR and 6 years of waiting for this to get done :(

I may sound ungrateful but thanks though.

@webbr commented on April 24th 2018

How ever long it took... THANK YOU! <3

@dev-101 commented on July 18th 2020

Any chance we get this little improvement #14109 anytime soon? Visitor widget still shows "ID" while in fact it should be named "Visitor ID" (two different things with so many IDs).

Also, we still miss a simple copy button to copy Visitor ID (it is now hyperlinked to itself / open in a new window and selection is a bit awkward experience) and use it in GDPR tool, which is itself, again, buried in the Admin section of the site. So, even better, as I suggested this before, a simple shortcut to open logs and delete that particular Visitor ID data would be a nice add-on feature.

Btw. I have noticed that once we remove visitor(s) data, that visit still counts ~~shows on the Visits Over Time chart widget (both in Visits and Pageviews data), e.g. they are not subtracted. I guess this is on purpose. Any chance we get this optionally fixed, too?~~ update: it seems that it gets fixed after a while when cron / caching updates etc.


@tsteur commented on July 19th 2020 Member

@dev-101 it's currently not on our roadmap but in case you are familiar with PHP/JS we'd be happy to review the PR for this and merge

@mattab commented on October 28th 2021 Member

--> Learn how to delete specific parts of a report, or specific visits, by following these steps below

we had published this faq a while back and forgot to post it here :tick:

Powered by GitHub Issue Mirror