Web Quality Checklist

The Web Quality Checklist is intended for all professionals who create websites. It is designed in a collaborative way by a community of Web professionals led by the French company Opquast. The checklist is released under the CC-BY-SA Licence. Access Github Repo.
quality-assurance; good-practices;
Checks are saved in your local storage

The Web Quality Checklist (V3) is intended for all professionals who create websites. It is designed in a collaborative way by a community of Web professionals led by the French company Opquast (Open Quality Standards). The checklist is released under a creative Commons BY-SA license. The original version can be found at the following address: https://checklists.opquast.com/en/qualiteweb/


  • 1. Each decorative image has an appropriate text alternative.
  • 2. Each decorative image link has an appropriate text alternative.
  • 3. Each information-carrying image has an appropriate text alternative.
  • 4. Included objects have an appropriate text alternative.
  • 5. Content managed by styles has an appropriate alternative.
  • 6. Typographic symbols have an appropriate alternative.
  • 7. All audio and video content is accompanied by a text transcription.
  • 8. Information is not conveyed by color alone.
  • 9. Audio captchas can be replayed at will.
  • 10. Captchas are accompanied by an alternative access solution.


  • 11. Each page’s source code begins with a document type declaration (doctype or DTD), whose syntax is one of those recommended by W3C.
  • 12. Each HTML ID is only used once per page.
  • 13. Each page’s content is organized according to a hierarchical structure of headings and sub-headings.
  • 14. The site does not force any redirects or auto-refreshes on the client side.
  • 15. Dates are presented in an explicit format.
  • 16. Navigation blocks are located in the same place in every page’s source code.
  • 17. The character encoding is UTF-8.
  • 18. Each page’s source code contains metadata that define the character set used.
  • 19. Content that should be reproduced by screen readers is not hidden from them.
  • 20. The content and meaning of each page are not altered when styles are disabled.
  • 21. Elements that are visually displayed as lists are tagged in an appropriate way in the source code.
  • 22. Text that can be formatted using styles is not replaced by images.
  • 23. The first occurrence of an abbreviation or an acronym in the body of any page provides an explanation of its meaning.
  • 24. Each page’s source code contains no elements that were misused for presentational purposes.
  • 25. Each page's source code does not contain any presentational tag or attribute


  • 26. The site provides at least one means of contact.
  • 27. The site provides at least two means of contact.
  • 28. Mail and phone information for companies’ and organizations’ local branches or headquarters are provided.
  • 29. Every information request submitted produces an acknowledgment of receipt.
  • 30. Response times are provided for information requests.
  • 31. The data in the site’s WHOIS information allow users to connect it with its owner.


  • 32. Each page provides a title that enables one to identify the site
  • 33. Each page provides a title that enables one to identify its content
  • 34. Advertisements and sponsored content are identified as such.
  • 35. Information about copyrights and reuse rights can be accessed from every page.
  • 36. The site provides a way for users to find out about new content and services.
  • 37. If the site provides a personal space (or a subscriber space), personal content can be backed up in a standard format.
  • 38. A lexicon or a glossary adapted to the target audience explains the industry-specific or technical vocabulary used.


  • 39. A product or service can be purchased without creating an account.
  • 40. No additional products or services are added to the shopping cart without a customer action.
  • 41. Product availability is shown before final order placement.
  • 42. The estimated delivery date is shown before final order placement.
  • 43. The method for retrieving a virtual item is explained before order placement.
  • 44. Users can still modify each item’s quantity, and add or delete one or more items, as long as the order has not definitively been placed.
  • 45. The nature and quantifiable characteristics of products and services are provided.
  • 46. The period of validity and conditions of special offers and promotions are indicated.
  • 47. The company’s or organization’s legal registration number, issued in its home country, is provided.

Public spaces

  • 71. The site provides at least one means of contacting the moderator of public spaces.
  • 72. Public spaces offer at least one way to report abuse.
  • 73. The conditions for moderation of public spaces are explained.
  • 74. Content and files intended for public spaces can be checked before upload.
  • 75. Information intended for public spaces can be previewed in their final form.

Files and multimedia

  • 76. The length of video and audio content is displayed.
  • 77. The format of downloadable files is displayed.
  • 78. The size of downloadable files is displayed.
  • 79. The language of downloadable files is mentioned, if not the same as on the original page.
  • 80. Animations, sounds and blinking can be paused.
  • 81. Running animation does not block access to navigation or content.
  • 82. Sound and video are launched by the user.
  • 83. The text of internal PDF documents can be selected.
  • 84. Internal PDF documents are given a structure based on headings.


  • 85. In the source code, each field in the form is associated with a label that is specific to it.
  • 86. Information supplementing a field’s label is associated with that field in the source code.
  • 87. Each form field’s label indicates whether or not it is a required field.
  • 88. Each form field’s label indicates the required data format, if any.
  • 89. The user is warned whenever a field is case-sensitive.
  • 90. There is an input error prevention mechanism for user password creation.
  • 91. The characters entered in a password field can be displayed in clear text.
  • 92. Every form label is visually attached to the field that it describes.
  • 93. If any data entered in the form are rejected, the fields containing the rejected data are highlighted for the user.
  • 94. If any data entered in the form are rejected, the reason(s) why are explained to the user.
  • 95. If any data entered in the form are rejected, the user can change any of the input data.
  • 96. For forms divided over several pages, an overall summary is displayed before the final version is submitted.
  • 97. The page displayed after the form’s submission allows the user to return to their navigation directly.
  • 98. Form submission is followed by a message indicating whether or not the action was successful.
  • 99. Complex processes are accompanied by a list of their steps.
  • 100. The current step in a complex process is indicated.
  • 101. Each step in a complex process allows the user to go back to the previous step.
  • 102. The user is warned that they will lose information if they go back using their browser’s history during a complex process.
  • 103. Navigating through a complex process does not cause any previously-submitted data to be lost.
  • 104. Copy-and-paste is possible in the form’s fields.
  • 105. The items in a drop-down list are grouped together appropriately, where applicable.


  • 107. Each link has a proper label in the source code.
  • 108. Underlining cannot be used for elements other than hyperlinks.
  • 109. Hyperlinks are visually differentiated from the rest of the content.
  • 110. The site applies a different style to visited and unvisited links.
  • 111. The site does not prohibit or restrict incoming links.
  • 112. Hovering over, or activating, hyperlinks does not alter the page layout.
  • 113. Hyperlinks of the same nature have identical colors, shapes and behaviors on all pages.
  • 114. All hyperlinks internal to the site are valid.
  • 115. Each hyperlink’s label describes either its function or the nature of its target.
  • 116. Consecutive hyperlinks are separated visually.
  • 117. Internal and external hyperlinks are differentiated.


  • 118. The identity of the author, the company or the organization is provided.
  • 119. The identity of the person or the service responsible for the content is provided.
  • 120. The homepage explains the nature of the content and services on offer.
  • 121. The name of the website and/or its author is displayed on every page.
  • 122. If the site is reserved or intended for a specific audience, that audience is mentioned, at least on the homepage.
  • 123. The complete address and phone number of companies and organizations can be reached from all of the site’s pages.
  • 124. The site’s root contains instructions for web crawlers.
  • 125. Each page’s source code contains metadata that describe the content.
  • 126. The source code of the pages contains a valid call to a favourite icon (“favicon”)
  • 127. The extension used is consistent with the entity’s identity, activities, geographical area or domain name.
  • 128. The website provides a sitemap file listing the content to be crawled.
  • 129. If the site claims to adhere to one or more standards or guidelines, a link is provided to each of them.


  • 130. The country code is provided for all phone numbers
  • 131. The country is mentioned for all mailing addresses.
  • 132. Each page’s source code specifies the content’s main language.
  • 133. The main language of a link’s target page is provided, if different from the original page.
  • 134. Each language change is indicated.
  • 135. Links to translated versions point directly to the current page’s translation.
  • 136. Links to equivalent versions of a page or site are written in the target language.


  • 137. The server does not force redirects from the desktop version to the mobile version.
  • 138. Users can switch between the website’s mobile and desktop versions from each page.
  • 139. The website does not block the browser’s zoom functionalities.
  • 140. JavaScript alerts and modal pop-up windows inviting the user to install a mobile app only appear once each session.
  • 141. The promotion of a mobile app does not use either JavaScript alerts or modal pop-up windows.
  • 142. The website offers one or more mechanisms for adapting to mobile devices.
  • 143. Email, URL, telephone, number, search, password, and date and time input fields are assigned an appropriate type.
  • 144. Phone numbers can be enabled using the appropriate protocol.


  • 145. Each iframe has its own description.
  • 146. The site does not use framesets.
  • 147. It is possible to go back to the homepage from any page.
  • 148. The user is warned before new windows are opened.
  • 149. Navigating the website does not open any po-up windows.
  • 150. Mechanisms for closing windows are visually attached to their content.
  • 151. Mechanisms for closing windows are immediately available.
  • 152. New windows that are specially sized and modal windows are all equipped with explicit close buttons.
  • 153. Mechanisms for closing windows are shown in the same location on every page.
  • 154. The site does not resize the browser window.
  • 155. Keyboard focus has not been removed or masked.
  • 156. The site can be navigated in its entirety using only a keyboard.
  • 157. Keyboard navigation is set up in a predictable order.
  • 158. The site does not contain any links to pages under construction.
  • 159. Each page displays information as to where it is located in the site’s tree structure.
  • 160. The site offers an internal search engine.
  • 161. The search result page indicates the number of results, the number of pages of results, and the number of results per page.
  • 162. Each search result page can be reached by means of a web address.
  • 163. The site map can be reached from every page.
  • 164. Navigation blocks of the same nature are in the same place on every page.
  • 165. Navigation icons are provided with explicit legends.
  • 166. Links to external software have an explicit label.
  • 167. If the site is not restricted to a specific public, its content can be accessed directly.
  • 168. Each page provides skip links at the beginning of its source code.


  • 169. An unsubscribe link is provided in each newsletter.
  • 170. Unsubscribing from within the newsletter does not require email confirmation.
  • 171. Subscribing to newsletters is subject to a confirmation process.
  • 172. It is possible to unsubscribe from newsletters from the website.
  • 173. The latest edition of the newsletter is available online.
  • 174. Newsletter archives are available online.
  • 175. The newsletters’ frequency can be found before subscribing.


  • 176. The design is consistent throughout the site.
  • 177. The display font size is expressed in variable units, not fixed units.
  • 178. The site provides at least one style sheet for printing.
  • 179. The content of each page can be printed without navigation blocks.
  • 180. A generic font family is listed as the last alternative in font family lists.
  • 181. Content is presented with sufficient contrast to its background.
  • 182. Words are capitalized for decorative purposes by means of styles.
  • 183. Styles do not justify the text.
  • 184. Content is only designated by its shape or its position on the screen.

Security and privacy

  • 185. The identity of third-parties involved in transactions is provided
  • 186. The privacy and confidentiality policy can be reached from any page.
  • 187. The site provides a way to reinitialise a password if it's lost, stolen or forgotten
  • 188. Passwords can be chosen and changed by the user
  • 189. User passwords allow graphic characters from the ASCII table.
  • 190. A mechanism raises the user's awareness regarding their password's level of security
  • 191. Security certificates are signed and currently valid
  • 192. Sensitive data are not transmitted literally through URLs
  • 193. Sensitive data are securely transmitted and signalled as such
  • 194. The headers sent by the server disable automatic detection of each resource’s MIME type.
  • 195. The server indicates each resource’s MIME type.
  • 196. Information relative to transaction security are provided
  • 197. The aim of using cookies, as well as the consequences of refusing them, are explained
  • 198. The process of accessing and modifying personal data is explained
  • 199. Account creation is subject to a confirmation process.
  • 200. Accounts can be created without the need to use a third-party identification system.
  • 201. Accounts and subscriptions opened online can be closed online
  • 202. The server does not list files in folders that do not have index files
  • 203. The server sends activation information for protection against cross-site scripting.
  • 204. The server sends information that indicates which domains are allowed to embed its pages in frames
  • 205. The website offers a security mechanism that limits the sources of its content.

Server and performance

  • 206. The server sends information to enable the caching of contents
  • 207. The server sends a 404 HTTP error code for resources not found
  • 208. The server sends a personalised 404 Not found error page
  • 209. The server sends a personalized 403 “Forbidden” error page.
  • 210. The main navigation menu is displayed on personalized error pages.
  • 211. The server compresses contents if the client accepts compressed contents
  • 212. Headers sent by the server contain information pertaining to the character set used
  • 213. The server respects the preferential order of languages specified in user agents
  • 214. Style sheets are minified
  • 215. Scripts are minified
  • 216. Script functions are put into external files
  • 217. The address of the site and of its subdomains works with and without a www prefix


  • 218. The source code of syndication feeds indicates their update frequency
  • 219. Syndication feeds can be detected by user agents
  • 220. Hyperlinks in syndication feeds are absolute
  • 221. The site provides at least one link to each syndication feed


  • 222. Cells in data tables are linked to their headers
  • 223. Captions for data tables are provided
  • 224. Linearising tables used for layout does not impede the understanding of contents
  • 225. Data tables are not replaced by images.
  • 226. Data tables are not simulated through styled text

Yay! You completed the checklist top to bottom!
Now spread the ❤︎ by thanking the author, making improvements or creating you own checklist!