In Blog, Salesforce Lightning, Security, Tips & Tricks, Training & Certification

Hello Lightning Experience, Goodbye URL Hacks

On August 25, Salesforce held a special event to reveal the new User Interface (UI) for Salesforce. This is the first major UI change for Salesforce. The last “change” was essentially nothing more than changing some of the colors and white spacing. You can watch the announcement made on the 25th here:

This new UI, called Lightning Experience, brings the look and feel from Salesforce1 to the desktop. This is a major overhaul. It is such a big change, that Salesforce is starting to upgrade with the Sales Cloud first.

Let’s take a look at an example. Below is a screenshot of the new Dashboard. Some of you will notice that there are more than 3 columns of charts (Huzzah!). Some of you will notice that the “Tab” view is gone and replaced with a menu bar along the left, similar to Salesforce1. Did you also notice that there is no URL?


Sales Dashboard

Lightning Experience Sales Dashboard


Let’s take a look at a different example. Let’s start with a record page. This template is pretty darn nifty. We have some very important information at the top, the Account, close date, amount and owner. We have a progress indicator of how far along the sales process this opportunity is, with the current stage highlighted in blue. The layout out moves the “related” list from the bottom of the page putting some of the information off to the right. This is the Activity view, so we’re looking at the tasks and next steps to complete this Opportunity. We need to click on “Collaborate” or “Details” to get to the Chatter or additional fields.

Opportunity Workspace

Lightning Experience Opportunity Workspace


There is one thing that is glaringly missing. There are no buttons. No edit buttons or custom buttons displayed. Just like Salesforce1, buttons no longer exist and have disappeared into the ether. Let’s think this through. We have no custom buttons. There is not URL. This means there will be no URL Hacks. No more URL hacks to be able to create a dynamic report by sending a user to a report and passing the filter value (pv0). No more URL hack to take a user to an edit/create screen for a record and pre-populate data. No more URL Hack to take the user to the “Send an Email” page and pre-fill the recipients and select the template. This also means that our custom buttons to integrate with other products disappear as well. We won’t have buttons to open a visualforce page or to send data to another system. For example, I’ve been recently using Conga Composer (an amazing app) which currently relies on a custom button to use. I’m sure vendors like Conga will find alternatives in the Lightning world, but beware – it may not be available immediately upon release.

The world isn’t all dark and gloomy. There’s a lot to be excited about. For instance, you’ll be able to drag and drop your Opportunities to update their stage and immediately get feedback on what the total Opportunity value. That’s pretty awesome. I’m not sure how well this will work for people that have validation rules that require Opportunities to meet certain criteria before the stage can be change. This is still a very cool setup.


Pipeline Board

Lightning Experience Pipeline Board


Here’s the new Homepage, which has been long overdue for an update. I think this looks amazing.

Home Screen (1)

Lightning Experience Home Screen


Still, for many people Lightning Experience is going to be a major change for people. This is especially true for organizations that use URL Hacks or integrate with other vendors through custom buttons.

So what can or should I do?

The great news is that Salesforce is making Lightning Experience an opt-in setup. As an administrator you can give Lightning Experience access through a profile or permission set. In addition, user’s with the permission can toggle between using Lightning Experience and the current Aloha interface. I would strongly recommend reviewing your processes and uses for custom buttons before you enable Lightning Experience. I would also recommend starting with a “pilot” group. Think of it as a focus group within your organization. Ask for volunteers, or pick some people from a variety of roles to try the new User Interface and give you feedback. I would recommend creating a chatter group for this feedback so people can put comments in as they’re experiencing it. This should help you identify the benefits and possible hiccups of enabling Lightning Experience for your whole organization.

I know Salesforce is going to try to help us replace our URL Hacks. Actions can go a long way to helping, but do not currently address everything. What URL Hacks do you use? What types of custom buttons are you using now? Leave a comment and let me know. I’ll love to point to the comments in this blog and share this information with some of the Product Managers at Salesforce.

Quick Update 9/4/15

I take my first hands-on look at the Lightning Experience with my pre-release org. You can check out the video here: and a follow up looking at the Sales Board feature and showing custom buttons not being available on the new UI:

Recommended Posts
Showing 22 comments
  • Kristi G

    I just rolled out a custom button process for creating new Related Records, it will be interesting to tackle how to address it from the Lightning (once I can use it, we have Person Accounts enabled so sadly we have to wait). I wish I could just get the new dashboards and not the rest! They are so PRETTY <3

    • Brian Kwong

      interesting. Are you using a URL hack? Or are you calling a flow from the button? Why not use Actions to create records?

  • Jackie

    I use URL button hacks to display report links on Accounts to pull a list of Contacts and a select group of custom Contact fields. The business required this grouping of fields be separate from the Related List fields. I have several similar use cases. How would you tackle this using the new UI?

    My code is as simple as this: /00OE00000035IN0?pv0={!Account.Id}

    • Brian Kwong


      Thank you for sharing. I’m not sure what the new method of doing this will be. It may be something that could be done as a custom lightning component – I’m not sure yet. I’m hoping there’s something that’ll allow us to “click” and go to a new screen. I wouldn’t my report to display all the time on the Account page.

      Once I get a chance I’m going to play around with using URL Hacks as a custom field (hyperlink formula) and seeing if that works. I don’t have a lot of hopes for it though. It might just pull you out of the Lightning Experience and into Aloha. Stay tuned.

      • Jackie

        Thanks, Brian!

  • Dustyn

    I use them often when creating records off a related list. I pull values and select record type, etc. Most of the time I don’t even use the “new” button on a related list. One of the best features of the URL hack is creating a return and save url. This plays a big part into the user experience. I can see where publisher actions will fill some voids but to have a user scroll to the top in order to create a new record takes away from the user experience and adds time to any process.

  • Carol

    I use a custom button with a URL hack (from your post on the subject 🙂 to send and email and prepopulate it with info:{!Contact.Id}&p3_lkid={!Account.Id}&retURL={!Account.Id}&template_id=00X80000001zPPO

    Hopefully there will be a work around, or another way to do this.

    Also curious… and may be a silly question, but if there are no urls, what happens to the record ID? We integrate to another system which uses those ids to in its error messages. In the current Aloha UI, we can simply take the 18 digit id from the error message and pop it on the end of to quickly find the record where the error occurred. I assume that won’t be possible with Lightning. How best to locate records using the record id?

  • Dan

    But there are buttons….the edit, delete are on the top-right…and custom action buttons are near the activity feed….

    Doesn’t help the lacking URL hack as they are considered actions now.

    • Brian Kwong

      Custom actions not the same as a custom button though

  • Diane Prime

    Hi Brian
    I have a couple of concerns, though of course love the idea of the new UI.
    1.Apps with buttons on the opportunity page – We use a free app called Sales Coach which works off a button, what do you think will happen for apps like this. NB this is what SFDC used for ages themselves and was issues by Salesforce labs.
    2.Is there any view of the level below this, eg adding products from price book, does the UI change here as well?
    3. My big concern is validation rules need to be respected, particularly when changing a stage, like most organisations we have field requirements by Closed Won

    Any info you have is much appreciated. Thanks Di

    • Brian Kwong

      1. Some would argue that Sales coach has been replaced with “Sales Path” in the last release. There’s similarities but not quite convince you can consider it the same thing. Sales Path requires the use of the new UI or Salesforce1.

      2. Great question! I’m not sure yet. I’m hoping to get into a pre-release org and play around and find out. Stay tuned.

      3. I’m not sure how they’re doing the drag and drop for Opportunities, but I’m guessing that validation rules will be respected. But I don’t know yet. I’ll post more details as I find them!

  • Mary

    We use custom buttons to set record types, populate values, etc. so this will be a concern for us.

    There are a lot of instances where we’re very field focused versus related list focused. Is there any way to control which tab appears first on a record – detail or related. I could see my users wanting it to default to Detail on certain record types.

    Do you still get 10 visible fields on related lists? I see that making the tiles of related list values quite large the way they’re laid out.

  • Russ Feldman (@russforce)

    Are they giving out pre-release orgs? I tried signing up for a trial day-of and it was Classic UI.

    • Brian Kwong

      Yes they are! any Pre-release org with Winter ’16 should have it. Take a look at this: I show how you can get it enabled and switch to the Lightning Experience

  • Bruce Perry

    Replacing what URL hacks do with a Lightning-compatible replacement is going to be a topic of major concern for my organization. For example, it’s very easy to create a record related to the current record with key fields pre-filled. I hope we don’t have to write complicated Visualforce and Apex code to replace simple URL strings.

    • Brian Kwong

      Salesforce considers this use case answered by the Actions functions. You would create an action that would set the pre-filled fields and then add any other fields that must be filled in to the Action template.

      This works, but it’s not quite as elegant as a URL hack since 1. You have to remember to add any new fields to the Action template and not just the page layout and 2. Some people want to take the user to a page as part of a process flow without having the record already get created.

  • grégoire saintenac

    Hi Brian, thanks for this post!
    I use url hack for email
    Like : /_ui/core/email/author/EmailAuthor?doc_id=xxxx&p3_lkid=xxxx&retURL=xxx&template_id=xxx,xxx);
    This is my last point before i can pass all users in ligthning

    • Brian Kwong

      There isn’t really a good replacement for that URL hack, although the new publisher email and email template option is pretty interesting

  • Robert Eiser

    Seems like URL hacks for reports may be coming back?
    Under Top Lightning features to be delivered in Spring ’17 there is “Dynamic Report Filters via URL Parameters”

    • Brian Kwong

      It’s something they’re specifically adding for Lightning Experience. I’m not sure we’ll be able to consider this a true URL hack or if it’s going to be based on something else. We’ll see though! I’m glad they’re doing something since the report URL hack is one of the more popular ones.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.