Plan customizations, solutions, and apps for SharePoint Online

Branding and customizing SharePoint Online is different than branding and customizing SharePoint Server products. SharePoint Online gets updated with new features on a regular basis and these updates can affect certain types of customizations. However, there are recommended customization and branding techniques available today that can streamline your branding and customization requirements. For example, if you are making structural changes to the master pages it’s important to stay up to date with the ongoing product updates applied to SharePoint Online. The easiest way to stay informed is to watch the Office 365 Roadmap and monitor the Office 365 blog. You can also preview the changes within the portal by going to SharePoint Online admin center and enabling “Preview Features”.

The software updates that Microsoft makes to SharePoint Online happen much faster than SharePoint server and customizing or unghosting master pages, which are a core part of the product, will result in those customizations being affected by updates. To remedy the situation, those customizations will need to be re-applied to the updated pages. Staying up to date is possible, but needs to happen much more frequently in SharePoint Online.

I’m used to customizing SharePoint server products, what’s different in SharePoint Online?

Methods for customization that work in SharePoint server won’t necessarily work in SharePoint Online. Some of the methods used for customizing and extending SharePoint server, for example, rely on the fact that the underlying platform is not constantly being updated – as is the case with SharePoint Online. SharePoint Online is continuously being improved, and any files that have been customized or unghosted may be affected by updates. Here are some recommendations for common SharePoint customizations, as compared to private SharePoint deployments vs. the SharePoint Online service.

Type of Customization   

SharePoint server   

SharePoint Online    

Workflow   

Start with Out of the box Workflows

SharePoint Designer, or Visual Designer

Out of the box workflow changes will not be overwritten by ongoing updates

Further customization will be overwritten by ongoing updates

Header/Footer   

SharePoint Designer, w/unghosted pages

No equivalent, unghosting pages requires ongoing maintenance

Content Blocks   

CBQ (un-throttled)

CBQ (throttled)

General Branding (colors, logos, etc.)   

Sandboxed solutions, Customized/unghosted Master Pages

Composed looks or inject styles via app model

Navigation   

Start with out of the box tools

Structural, Managed, and Search-driven Navigation

Start with out of the box tools

Explore navigation options for SharePoint Online

Customizations: simple to complex

SharePoint Online customizations range from non-technical changes you can apply quickly in the browser using site commands or features to custom app development using developer tools:

  1. Customization using the browser    You can use the browser-based settings SharePoint Online to apply simpler customizations like changing title and logo, updating navigation links, applying a new site theme, changing the contents of a page, or changing views for lists and libraries. Browser-based customizations are the easiest customizations to apply, and they require minimal technical expertise.

  2. Customizations using supported tools and applications    You can use supported SharePoint tools to perform more extensive customizations. For example, Office applications like Access 2013, Excel 2013, and Visio 2013 help you create highly dynamic, data-rich pages on your site. You can even create a SharePoint app as a no-code solution by using Access 2013.

  3. Customizations using remote provisioning    In SharePoint Online, you can use custom CSOM code in apps for SharePoint to provision SharePoint site collections, sites, and sub-sites with branding elements. This site provisioning pattern is called remote provisioning.

  4. Customizations using apps for SharePoint    The new Cloud App Model in SharePoint Online enables you to add apps to your sites, and is the recommended replacement for Sandboxed solutions going forward. You can use existing third-party apps or build your own. Add apps to a site when you want to customize it with specific functionality or information. For example, you can add apps that perform general tasks like time and expense tracking. Or you can use apps and remote provisioning to apply branding elements to sites. You can also add apps that display news or information from third-party providers, or that connect to social websites.

    • Third-party apps    Third-party apps are found in the SharePoint Store, which is an Office.com-hosted marketplace accessible from SharePoint Online sites. Select the apps that you want to be available in your tenant. Admins can also buy licenses for specific apps for all users in an organization (requires Site Owner permissions or greater).

    • Custom apps    Your organization can also develop its own apps for SharePoint Online and make them available to users through the App Catalog site. If you know how to build a web application, then you know how to build an app for SharePoint. You can use any language, such as HTML, JavaScript, PHP, or .NET, and your favorite web development tools, including Microsoft Visual Studio, and "Napa" Office 365 Development Tools. For more information, see Get started developing apps for SharePoint.

Top of Page

Can I still develop sandboxed solutions?

Sandboxed solutions have been deprecated in SharePoint’s online environment, as the representative architecture is not economically scalable across the shared multi-tenant environment. The effort required to maintain sandboxed solutions across all of the sites for any customer is incredibly high. Alternative solutions such as remote provisioning offers similar capabilities without the ongoing maintenance requirements.

Sandboxed solutions carried over as part of a migration will continue to work for a limited period; however, Microsoft is focusing on alternative solutions for SharePoint Online and it is highly recommended that all Sandboxed solutions be replaced with alternative functionality such as online apps. In the meantime be aware that ongoing updates to SharePoint Online may affect some sandboxed solutions.

With the introduction of the cloud app model (CAM) and apps for SharePoint, there are now viable alternatives to older, more established ways of branding and provisioning SharePoint sites.

You can perform all types of site branding using apps for SharePoint to provision site branding throughout the enterprise and manage branding at scale: a pattern known as remote provisioning. While SharePoint developers have historically used the SharePoint feature framework, site templates, web templates, and site definitions to provision sites and site collections, the remote provisioning pattern shows you how to create custom apps for SharePoint that provision site branding and perform other site provisioning tasks.

Top of Page

Why Apps?

Apps for SharePoint offer several advantages over sandboxed solutions. Apps provide users with a way to extend SharePoint sites without creating additional operational burden for admins. Apps are also easy for end users to discover and add. Apps for SharePoint Online are architected for the cloud, so they better integrate with the respective cloud-based resources in smoother and more flexible ways than sandboxed solutions.

For more technical guidance about when you should opt to develop custom apps instead of sandboxed solutions, see Apps for SharePoint compared with SharePoint solutions. See also Get started developing apps for SharePoint, the SharePoint solution packs, and the SharePoint Patterns and Practices on Github.

Top of Page

Examples of common SharePoint Online customizations

In order to determine the method of customization or development that is appropriate for your organization, think about what you want to customize and what kinds of solutions you want to develop.

There are several different ways you can achieve the same outcome on a SharePoint site. For example, if your goal is to create a highly-customized list, you can achieve this by using different List Settings in the browser to configure a list and its views. You might even be able to perform all of the desired customization this way.

It is a good practice to first start with browser-based customizations before using supported tools and applications to achieve similar customizations.

In this section:    

Customizations: simple to complex

Can I still develop sandboxed solutions?

What do you want to customize? (with ideas for how to do it)

Making solutions or apps available to users

Exploring partner solutions and services

I want to change the look and feel or site design   

First, try browser-based options:

Then, try no-code solutions :

Then, consider custom code solutions:

Use the Site Settings page to:

Use Design Manager to leverage your expertise in HTML, CSS, and JavaScript (available only for publishing sites):

  • Easily design HTML master pages and page layouts in your HTML editor of choice.

  • Convert the HTML file to an ASP.NET master page.

  • Add key functionality to your pages, such as a search box or navigation control, from the Snippet Gallery.

  • Design unique UI experiences for different devises by creating device channels.

For more information about using the Design Manager, see MSDN: Develop the site design in SharePoint 2013.

Use InfoPath Designer to:

  • Customize list forms, workflow forms, and form library forms

  • Apply new layout, colors, and themes to the forms

For more information about working with InfoPath, see Find content about InfoPath 2010 and 2013.

Develop apps for SharePoint that feature App Parts or custom UI actions, such as ribbon or menu commands.

Use Visual Studio to:

  • Create custom site pages

  • Create custom ribbon enhancements

  • Create custom dialog box or ribbon controls

  • Deploy custom design solutions as features

Note    If possible, try to customize your site using custom CSS elements and themes rather than custom master pages. Custom master pages will block upgrade to the latest user interface experience when upgrades are rolled out to customers. This may introduce unexpected costs for your organization at upgrade time.

Top of Page

I want to customize the appearance of information on sites   

First, try browser-based options:

Then, try no-code solutions:

Then, consider custom code solutions:

Customize individual pages on the site:

  • Add and edit text, images, video, and other objects

  • Add and customize Web Parts

  • Add and customize new lists and libraries

  • Create custom views and forms for lists and libraries

  • Create and edit content and publishing pages

  • Enable or disable features

Add third-party apps for SharePoint to integrate information into sites. See Buy an app from the SharePoint Store.

Create SharePoint apps with Access 2013. For more info, see Create an Access app.

Use SharePoint Designer to:

  • Add text, images, scripts, and Web Parts to pages

  • Create and customize site and Web Part pages

  • Add custom actions

  • Add Custom navigation

Use Microsoft InfoPath 2013 to:

  • Add text, images, and links to list and workflow forms

  • Add custom data connections and functionality to list and workflow forms

For more information about working with InfoPath, see Find content about InfoPath 2010 and 2013.

Use supported Microsoft Office applications to:

  • Publish workbooks with data, charts, and visualizations using Excel 2013 and Excel Services

  • Publish data visualizations with Visio 2013 and Visio Services

Use the Script Editor Web Part to add JavaScript code to site pages.

Develop apps for SharePoint that feature App Parts designed to display information

Use Visual Studio to:

  • Create custom site pages

  • Create custom Web Parts

Top of Page

I want to display content from different data sources   

First, try browser-based options:

Then, try no-code solutions:

Then, consider custom code solutions:

  • Add Web Parts that retrieve content from external sites or data sources

  • Customize list views and forms from various data sources

Use Excel 2013 and Excel Services to display and visualize data from a wide variety of data sources.

Use Access 2013 to quickly create sophisticated database-like no-code solutions with SQL Server as the backend database.

Add third-party apps for SharePoint to integrate information into sites. See Buy an app from the SharePoint Store.

Configure Business Connectivity Services and to connect to data sources such as SQL Azure databases or Windows Communication Foundation web services.

Use InfoPath 2013 to display data from lists and form libraries with:

  • Custom list forms

  • Custom form library forms

  • Custom form-based applications

For more information about working with InfoPath, see Find content about InfoPath 2010 and 2013.

Develop custom apps for SharePoint to integrate and display information.

Use Visual Studio to:

  • Create custom list definitions

  • Create custom site pages

  • Create custom Web Parts

  • Create custom dialog box or ribbon controls

Top of Page

Making solutions or apps available to users

After you finish developing a solution or a custom app, you may need a way to make it available on one or more sites or site collections in your SharePoint Online environment. Here are some ways you can do that:

  • If your solution is a customized list or a specialized site or page, you can share a link to that page or site with users.

  • If you have developed a custom SharePoint or Office app, you can make it available by uploading it to the App Catalog site. For more information about making custom apps available, see Use the App Catalog to make custom business apps available for your SharePoint Online environment.

  • If you add a third-party app from the SharePoint Store, you can make it available to all users across the site collections in your SharePoint Online environment by acquiring licenses for all users in your organization. Or, you can acquire licenses for only those who need to use it, and assign those licenses to the designated users. For more information, see Buy an app from the SharePoint Store and Manage app licenses for a SharePoint Online environment.

  • If you want to change the settings for whether or not site users can acquire apps from the SharePoint Store, see Configure settings for the SharePoint Store.

  • Custom solutions can be made available as well; however, if users are selectively using sandboxed solutions it will be difficult to ensure those sites are refreshed with updated solutions after the SharePoint Online update process affects the site.

Top of Page

Exploring partner solutions and services

If you are interested in exploring services or applications from Microsoft partners that are available for SharePoint Online, visit theMicrosoft Office 365 Marketplace. There are also many open source solutions developed by the collective SharePoint Online community, including Microsoft, MVPs, Partners, and Customers on the Office 365 Developer Patterns and Practices Github site.

For more technical guidance about when you should opt to develop custom apps instead of sandboxed solutions, see Apps for SharePoint compared with SharePoint solutions. See also Get started developing apps for SharePoint, the SharePoint solution packs, SharePoint Online tuning guidance, and the SharePoint Patterns and Practices on Github.

Top of Page

Return to SharePoint Online Planning Guide for Office 365 for business.

Applies To: SharePoint Online



Was this information helpful?

Yes No

How can we improve it?

255 characters remaining

To protect your privacy, please do not include contact information in your feedback. Review our privacy policy.

Thank you for your feedback!

Support resources

Change language