Power bi toggle button to hide or unhide page

Hi everyone,

Is there a possibility to create a button in power bi to hide or unhide a page ?

I am aware of creating bookmarks to toggle between pages and hiding or unhiding visuals.

Any help will be much appreciated.

Stay Safe,

Hello @nbaraili,

Thank You for posting your query onto the Forum.

I really don’t think as of now there’s a way to “Hide/Unhide Pages” using a button. Similar type of query was also posted onto the Power BI Community. I’m providing a link below of that question which was posted there. Alongwith I’m also providing a link below where you can vote for this type of query.

Hoping you find this useful. :slightly_smiling_face:

Thanks & Warm Regards,

1 Like

Hi Harsh,

Thanks for the update.

Definitely, I am going to vote for this.


Hello @nbaraili,

You’re Welcome. :slightly_smiling_face:

Thanks & Warm Regards,

Hi @nbaraili,

In addition to the link share by @Harsh, below are some other useful link to help you with your work.



1 Like

There is one other point to note - although I don’t believe it is what you are looking for, it is a ‘feature’ of hidden pages worth noting.

You CAN create a hidden page, save your report with that page active, and then when the user navigates away from the page, they will not be able to get back to it without re-loading the report.

I use this trick to create welcome pages on my reports for clients, with their logo and instructions on the most important features of the report (how to change the date, page navigation, latest updates, etc)


@Heather Thanks.

Could you please upload a sample pbix file so that i can follow what you are stating ?

Stay Safe,

No, unfortunately, I cannot - because unless you load the file into the PowerBi service, you won’t see it happen.

But, here are a couple of screenshots that will hopefully help you to understand what I mean:
When the customer logs in to the report, they see this page (as you can see from the tabs pages list on the left, no pages are highlighted as active):

Once the user selects any other page of the report, a page is highlighted as active:

If I go to edit the report, you can see that the “Info” page (the one the customer sees when they open the report) is hidden. Because I had that tab open when I uploaded the report, that is the page they land on.

It’s not the conditional ‘hide pages’ that you were requesting, but it is a way to have a single-view page in your report. If the user doesn’t have editing rights, they cannot view the page a second time in the same opening of the report. The only way to see the page again is to completely go out of the report and reload it.

This was actually a trick I was using to track opens in the report - as the old usage metrics tracked every page as a hit, not every open.

1 Like


I got to thinking more about this issue last night - and there may be a solution for you.
Please see the attached file - I was asked to put together a tutorial file on conditionally hiding things (like text) based on user selection, and another file on buttons.

For conditionally hiding things - my solution is generally to use what I call a Mask. This is a shape that uses conditional color, either matching the background or transparent depending on if I want what is under to show or not.

So I decided to combine both tasks, and hide buttons instead of text. But while I was putting together the file, I realized that there might be a solution in this for you. Take a look at the Navigation 2 page on those three tricks - I even managed (using the new Page Navigation action in buttons), to create a button that uses a slicer controlled by RLS (role level security)!

Hopefully, one of these tricks will lead you to a solution for your issue. I’m thinking of redesigning one of my reports to have only a single visible page, and use the Page Navigation to move around instead of the tabs.

Hidden Page Navigation.pbix (57.4 KB)


One final update to this post - I have redesigned the report mentioned at the end of my last post, and as you can see, there are now NO tabs showing in the viewer mode on the server - because the report has only one page that is not hidden.

However, each of the buttons you see do actually work, and they take the user to the appropriate page.
Once the user is done with the page, they have a ‘back’ button to return them to this main page.

And yes, there is even a hidden button, that only appears for some users.

1 Like


:clap: :clap:. I’ve bookmarked this one to use on future reports. Thanks for the detailed posts on this technique.

Now we just need to get you to participate in the Data Challenges to see what other cool stuff you’ve got in your bag of tricks… :smiley:

As a fellow custom button devotee, did you see this one from last week? Some great customizable button templates.

  • Brian

:slight_smile: Thank you @BrianJ, I just have to figure out what time I’m going to give up so I can participate in one of the Data Challenges fully. I have three different files that are at various development stages (one for each previous challenge), but something has come up with my office work that has gotten in the way of completion each time.

And honestly, once the challenge is complete, I don’t feel that my solution would really be ‘mine’ once I’ve started reading the posts reviewing other reports.

And yes, I did see that post, and I’ve downloaded the file. Almost used it for a report I was developing last week, but at the last minute I decided not to go with the button option.

My favorite use of buttons is actually to change chart types. I think I’ve mentioned this here before, I have a member of management that LOVES pie charts, and I’m trying to train away from that. So where he would request a pie, I build two charts and layer them over one another - then I make the ‘other’ chart type (bar, treemap, whatever) the default and provide a button to switch to pie chart.

I’m always amazed at the things I discover when providing answers in the forum - the idea that I could code a page navigation button to include RLS was really an eye opener for me.