Quality and Performance Report - TriMedicare
www.trimedicare.co.in
Well done, these best practices are respected
100/100
Your HTML response is not too heavy
Why reduce the code amount of a page?
Before a web page can be displayed, the browser must, among other things, download it, parse it and model it into a document that can be understood by the rendering engine. If the amount of code contained in the page is too large, these steps are slowed down and the rendering is delayed.
How to reduce the amount of code?
Your HTML response should contain only the information that is immediately necessary to display the visible area of the page. Move inline information to external files (JS for scripts, CSS for styles, asynchronous queries for additional content) and simplify the HTML structure of your page.
100/100
No Mutation Events detected in your scripts
To capture DOM events, do not use Mutation Events. Alternatives exist.
Good concept, bad implementation
When developing complex JavaScript applications, you may need to know when the DOM node tree has changed. Introduced in 2000 in the DOM, Level 2 specification to provide a solution to this need, Mutations Events are browser-initiated events that let you know when a DOM node is added, removed, or deleted.
Mutation Events, however, present major performance problems. First, they are synchronous, i.e. they prevent other events in the queue from being fired (if those events are used to update the UI, this will cause some lag). Second, they are implemented as browser events, thus traverse the DOM tree from the targeted HTML element to the parent element which listens for the event, clogging the JavaScript thread along the way.
Mutation Events have been deprecated in 2016 in the DOM, Level 3 specification.
Mutation Observers to the rescue
If you need to watch for changes being made to the DOM tree, you should use the MutationObserver
interface (DOM4 Living Standard).
Mutation Observers are asynchronous, processed in batches, and observe
specific or all changes to a node. They are more efficient in terms of
CPU usage than browser events and therefore cause fewer to no UI freeze.
Learn how to use Mutation Observers (Mozilla Developer Network).
100/100
No frameset, frame and noframes tags detected
These tags are obsolete, due to several issues related to the navigation consistency, SEO or browsers' bookmark features for example.
None of these tags is detected on this page.
The use of the iframe tag is prefered.
100/100
This page uses only standard image formats
The images that use a non-standard format may not be indexed by search engines.
Only these image formats are considered standard on the web: jpeg, jpg, png, gif, svg, ico, webp. You should consider an alternative to any other format.
Moreover, remember to treat the text around your images: some search engines analyze approximately the 10 words preceding and following the image in order to add a context to the image.
100/100
No Java applets detected
Java applets are considered obsolete in 2015. HTML5 is powerful and more widely supported. Using Java applets can lead to compatibility issues and may send negative signals to your users (e.g. the browser indicating that content was blocked because it could be dangerous).
Congratulations, this page doesn't contain Java applets.
100/100
This page specifies a <title> tag
The page should define a unique title (using a <title> tag).
Use of titles by search engines
Once properly configured, the page title can be displayed in the search engine results page:
Using a suitable title is a major criterion for SEO. It allows you to control at best what is displayed in search results pages and determine the keywords you want your site pops out.
How to define the title of a web page?
The title of the page is specified into the <title>
tag, which must be placed into the <head>
tag, at the beginning of the code.
This page defines the title trough the title
tag.
Here is the page's title:
TriMedicare
100/100
You have defined a <meta> 'description'
The page should define a unique description.
Description in search engines
The description of the page may be directly displayed in search engine results pages (SERP):
It allows you to control at best the entry preview in search engines, and to improve the click rate to your page. Learn more.
How to define a page's description?
Use <meta name="description" content="page description">
and place it in the <head>
tag.
This page defines one <meta> description
:
best medical devices distributors in kolkata like oxygen concentrator, cpap, bipap, nebulizer, oximeter, wheelchair and specialized for sleep test
100/100
Do not use <bgsound> tag
No bgsound
tag detected. This is a good practice: this element is not a HTML standard. See more information.
Use the audio tag to deliver audio content on your page.
<audio src="my-audio-file.ogg" autoplay>
Your browser doesn't support theaudio
element.
</audio>
100/100
You do not use query strings in the URL
This URL does not contain any parameter.
A URL should be as readable as possible. For instance, http://example.com?userId=332&group=MyGroup
is less readable than http://example.com/mygroup/me
.
100/100
You do not use links to Word documents
.doc and .docx documents do not guarantee compatibility with all major operating systems. It's recommended to use PDF documents.
This page contains only standard links.
100/100
No DOM manipulation inside loops detected
Working directly with the DOM has a cost. If you have to add elements to a node, you should prefer to append them once rather than one by one.
Well done, none of your loop contains a jQuery append
method.
100/100
You do not use excessive specificity on selectors
Using too specific jQuery selectors impacts performance: see more information. Here is an example of a good use of the library:
$( ".data table.firstClass td.secondClass" );
// Better: Drop the middle if possible
$( ".data td.secondClass" );
This page does not contain too specific selectors, this is a good practice.
100/100
All your resources are served from a consistent URL
Resources with identical content should be served from the same URL to avoid duplicate downloads and additional requests.
Different URLs for the same resource
If you use different URLs to serve identical content, browsers have to request this content from the server several times, and your page will trigger unnecessary requests for data. If the same URL is used, the browser will only send one request and will use the response wherever the resource is requested. You should also use the same URL to reference the same content on several pages to benefit from the cache mechanism.
How to fix this?
Serve each resource from a unique URL. If you have to request the same resource several times, the same URL should be used to retrieve it every time.
100/100
No redirect detected
The redirects trigger avoidable roundtrips on the network and increase the page loading time.
HTTP redirects
The HTTP redirects inform the browser that the desired content is accessible from a different URL. They trigger a new HTTP request to retrieve the target resource and return an HTTP code between 300 and 399. See the specifications of HTTP redirects.
How to solve the issue?
Allow the user to directly access your content without redirects, or determine and improve what causes these excessive loading times on your redirects. See recommendations from Google.
This page does not use redirects before accessing the right content.
100/100
Only reachable resources are requested
You should avoid requesting unreachable resources.
All of the page's resources are reachable.
These errors can affect content on and behaviors of your website and cause unnecessary network traffic, which affects the loading time of your page.
100/100
The words are well separated in this URL
You should prefer the use of dashes in the URL.
URL and SEO
The words in the URL are among the many factors impacting the SEO: if you search the words web performance
in a search engine, one criterion used by Google will be to check if the URL contains the words performance
and web
.
But for Google, underscores are not word separators: If your URL contains web_performance
it will not help to highlight the page on the query web performance
(web_performance
is regarded as a unique word).
This behavior is however not common to all search engines. For example, Bing does not differentiate dashes and underscores.
Please note that Google does not penalize you for using an underscore in the URL.
How to resolve the issue?
We recommend using -
instead of _
on your new web pages.
This is more complex fix the issue on existing web pages, such as the one analyzed here, because you can't just rename the URL (you will lose all your SEO efforts). It is then necessary to set up a permanent redirect (HTTP code 301) retaining the old URL, that forwards to the new URL. Beware: many redirects on your site can also affect the visibility of your web pages. So do not use redirects if the number of relevant pages remains limited.
This URL respects the tip.
100/100
You are using persistent connections
In HTTP/1.1, each resource is downloaded over a dedicated connection (TCP). Some headers can indicate to the browser that it can reuse the same connection multiple times, which improves performance.
The HTTP Keep-Alive headers
The Connection
and Keep-Alive
HTTTP headers inform the browser how it can keep a TCP connection
(enabled by default with HTTP 1.1) open and reuse it for future
requests.
For these persistent connections to be enabled, the Connection
header must be set to keep-alive
. The Keep-Alive
header must indicate the minimum time during which the connection must
remain open and the maximum number of requests to answer to. For
example:
Connection: Keep-Alive
Keep-Alive: timeout=5, max=1000
indicates to the browser that the connection must remain open for at least 5 seconds and answer, at most, 1000 requests.
To enable persistent connections, contact your web hosting provider or the people in charge of maintaining and configuring your web servers.
100/100
You specify a character set in the response HTTP Header
Specify the character set used in the Content-Type HTTP header allows the browser to parse immediately the page.
When the browser receives bytes from your server, it needs to identify the collection of letters and symbols that were used in writing the text that was converted into these bytes, and the encoding used for this conversion, in order to reverse it. If no information of this kind has been transmitted, the browser will try to find recognizable patterns within the bytes to determine the encoding itself, and eventually try some common charsets, which will take time, delaying further processing of the page.
How to specify a charset in the Content-Type header?
In the following explanation, we will consider UTF-8 as the targeted character set but please remember that the character set declared in your Content-Type HTTP Header must reflect the character set used to encode the file, which may not be UTF-8.
On Apache 2.2+, the configuration of UTF-8 as a default character set for your text/plain
and text/html
files involves the AddDefaultCharset
directive:
AddDefaultCharset utf-8
For other types of files, you’ll need the AddCharset
directive:
AddCharset utf-8 .js .css …
On nginx, you’ll need to make sure that the ngx_http_charset_module
is loaded, then use the charset
directive.
charset utf-8;
Here too, it is possible to refine the scope so that other types of files than text/html are delivered in utf-8, using the directive charset_types:
charset_types text/html text/css application/javascript
Learn more about why and how to use the meta charset tag and the Content-Type header
100/100
Fonts are loaded early
Internet Explorer will block the rendering of the page until the font has loaded. If <script>
tag is placed before the font, the page will not display anything as long as script and fonts are not downloaded.
Well done, your fonts are loaded before your scripts.
100/100
You do not need to minify the HTML resources
Compacting HTML code, including any inline JavaScript and CSS contained in it, can save many bytes of data and speed up download and parse times.
Minify HTML for the following resources to reduce their size by 1.5KiB (3% reduction).
- Minifying https://www.trimedicare.co.in/ could save 1.5KiB (3% reduction).
You get 100/100, while your resources are not minified? It means that we considered that the gains provided by the minification process were not significant enough to be reported.
100/100
You do not use CSS @import
Using CSS @import
allows to add external stylesheet. In fact, browsers cannot download
them at the same time, this may add a delay to the rendering of the
page. It is better to use the link
tag. See more information.
100/100
You provide a favicon
Well done, you defined a favicon on this page.
Favicon is a small image providing an icon to a website. It's located in the root of your server and the browser will always request it. It is better not to respond with a 404 HTTP code (not found).
Moreover, this file will be asked on every requested web page, so make it cacheable: the client will request it only once. See more information.
100/100
No deprecated attributes are detected in the <body> tag
Some layout attributes are deprecated in HTML 5: alink
/ background
/ bgcolor
/ link
/ text
/ vlink
Congratulations, this page doesn't use deprecated attributes in the body
tag.
Prefer using CSS instructions instead.
100/100
Compression is enabled
Compressing resources with gzip or deflate can reduce the number of bytes sent over the network.
Enable compression for the following resources to reduce their transfer size by 2.4KiB (51% reduction).
It appears these files are hosted by a third-party, so they may not be within your control. However, you should consider any alternative to these resources to improve your page performance.
- Compressing www.theworldcounts[...]e=14 could save 1.2KiB (51% reduction).
- Compressing www.theworldcounts[...]e=14 could save 1.2KiB (51% reduction).
100/100
Your CSS resources are minified or don't need to be
Your CSS is minified. Learn more about minifying CSS.
There are many tools to minify CSS files. You can try YUI Compressor or cssmin.js, recommended by Google.
If you want to know more about the CSS minification, do not hesitate to read this article on the subject!
100/100
No 'refresh' <meta> tag
It is not recommended to automatically force a page refresh. This behavior disturbs users who are not able to control it.
This page does not use meta refresh
tag. This is a best practice.
100/100
This page only uses secure content
This page was transmitted over the HTTPS protocol, and all resources are fetched using the HTTPS protocol. So there is no Mixed Content vulnerability.
For further information on Mixed Content, you can read this article on this subject.
100/100
You do not gzip/deflate PNG images
Compression has a cost, on the server and the client browser. You should enable it only if it is effective.
PNG and compression
PNG images does not support gzip compression. It is useless to perform compression operations on server side, and decompression on client side for this kind of files.
This page does not compress images. This is a best practice.
100/100
You do not use too much "prefetch" on the links
No resource is prefetched on this page.
You should limit the number of prefetched requests to avoid network congestion. Identify your users' behavior to prefetch the most requested resources.
Note that some browsers automatically block the number of prefetched resources. For instance, Internet Explorer 11 limits this mechanism to 10 requests.
100/100
You do not use a useless "http-equiv" <meta> tag
HTTP headers are more efficient than the http-equiv meta tags.
The <meta http-equiv=""/> tags
The http-equiv
meta tags provide the web browser with information similar to HTTP
headers. For example, defining the meta <meta
http-equiv="content-type"/> is the same as sending the HTTP
Content-Type header.
There are two disadvantages in using http-equiv meta tags:
- Going through the meta requires to interpret the beginning of the HTML page, which is slower than going through the HTTP headers in terms of performance
- If the HTTP header is already present, the meta is ignored
In which cases are the <meta http-equiv=""/> useful?
Only one case can justify the presence of these meta tags: if you don’t have access to the configuration of your server, and that is to say to the HTTP headers.
However, we recommend that you use a configurable server so that you can establish the most efficient site possible.
This page does not contain a http-equiv meta tag. That's a best practice.
100/100
No empty "src" attribute detected
The "src" attributes link the current page to other resources. There is no justification for using them with empty values.
All your src
attributes precise a target. That's a best practice.
100/100
No cookies are sent on static resources
You send some unnecessary data on the network through cookies on static resources.
Cookies and static resources
Cookies are used to customize the content of a page depending on the user profile. There is no need to send this kind of information when requesting resources that deliver always the same content (static resources).
The requests to images, JavaScript or CSS resources do not need to use cookies.
How to fix the issue?
Do
not use cookies on static resources requests. However, some domain
names require the sending of cookies on all resources. In that case, you
can create another domain name that will deliver your static resources.
Example: static.mydomain.com
100/100
Your JavaScript files are well distributed
Each HTTP request affects the performance of your webpage (e.g., roundtrip time and bandwidth usage).
For example, it is better to request a unique 50 kB file instead of requesting 10 files that are 5 kB in size.
How should I distribute scripts?
Distribute your scripts by integrating them directly into your HTML or grouping them in files. We recommend using the latter method to take advantage of caching mechanisms.
You make requests to JavaScript files wisely.
100/100
Your CSS files are well distributed
Each HTTP request affects the performance of your webpage (e.g., roundtrip time and bandwidth usage).
For example, it is better to request a unique 50 kB file instead of requesting 10 files that are 5 kB in size.
How should I distribute styles?
Distribute your styles by integrating them directly into your HTML or grouping them in files. We recommend using the latter method to take advantage of caching mechanisms.
You make requests to CSS files wisely.
100/100
All your resources have a size < 1MB
Too heavy files should not be loaded on a web page. Be sure you need this resource to load the page.
100/100
You specify a consistent label on your links
A link is more attractive if the text describes what is behind it. You can also take the opportunity to use keywords in these texts, to improve your page's SEO.
Describe the link in your <a>
tag, rather than indicating the link itself. Example: <a href="http://mylink.com/">My description</a>
The content of your <a>
tags are different from the link itself. That's a best practice.
100/100
No BOM (Byte Order Mark) detected
Some parsers are not able to interpret a page with a BOM in it.
What is the BOM?
The
BOM is a hidden character located at the beginning of the page, aiming
at helping to determine what encoding the page uses. But the best
practices of the web prompt the use of the HTTP Content-Type
header to define the encoding used by the page. The BOM has no reason to be in this context.
Apart from the fact that this type of indicator is useless on the web, it can lead to a certain number of issues. This is the case for example of the W3C validation that is going to try to interpret the first character which corresponds to the BOM. Then, the document will not be valid.
No resource uses a BOM.
100/100
You specify resource cache expiry headers
Cache headers (Cache-Control
, ETag
, formerly Expires
) are essential for an effective cache policy, and will greatly impact the loading time of your pages during future visits.
The Cache-Control
header
Each resource can define its caching rules via the Cache-Control
HTTP header. The max-age
property defines the duration of the caching (in seconds), and can be
accompanied by instructions for caching resources on proxy servers,
located between the browser and the server issuing the resource.
The following header indicates that the response can be cached on proxy servers and on the browser (public
, as opposed to private
where only the browser is allowed to do the caching) for two hours:
Cache-Control: private, max-age=7300
If some of your resources do not need to be cached, you can also indicate this explicitly:
Cache-Control: no-store
The Expires
header
Expires
is the earliest HTTP header for managing resource caching, and will help you manage the cache for browsers that do not support Cache-Control
.
When using the Expires
header, you can define an expiry date for each resource: as long as the
date has not expired, the browser will either store or use the resource
stored in the cache.
The expiry date of the resources is set using the Expires
HTTP header:
Expires: Thu, 25 Dec 2014 20:00:00 GMT
You can specify a long expiry date for static resources (maximum 1 year), and a shorter expiry date for resources that may change (minimum 48 hours).
Reassessment of resources when the cache expires
If no cache policy is set for a resource or the duration of its caching is exceeded, the browser makes a new request to download a required resource.
To prevent the browser from downloading a resource that has not been modified since it was cached, use the ETag
HTTP header. Each version of a resource can be associated with a
validation token. When a resource's cache expires, the browser will ask
the server again for the resource, passing this token with the If-None-Match
HTTP header containing the token value. The server will compare its
version of the token with the one provided. If the resource has not been
modified, the server will allow the browser to renew the caching of the
resource without downloading the resource again, via an 304 "Not
Modified" HTTP response.
Deliberate cache invalidation
When releasing a new version of your site, remember to rename static resources that have been modified (versioning), in order to force browsers to download these new versions, instead of using cached resources, to prevent users from finding themselves in an unstable version of your page. For example:
maressource.min.20140101.js
To learn more about HTTP caching, please see Google's recommendations.
Congratulations! Your resources are cached.
100/100
The page description has a right size
The page must have a description between 20 and 300 characters.
How the description is used by search engines
When properly configured, the page description can be found directly in the search results:
But search engines don't necessarily use the description you give them. If they think the description is irrelevant, they will use other criteria to present your page, and you will lose control over the displayed content. However, that you will not necessarily be penalized if your text is too large or too short. Learn more about how Google, for example, handles this topic.
How to define the description of a page?
The description of the page is provided by the <meta name="description" content="description of the page">
tag, which must be placed in the <head>
tag, at the beginning of the code, au début du code.
This page defines a <meta> description
containing between 20 and 300 characters:
best medical devices distributors in kolkata like oxygen concentrator, cpap, bipap, nebulizer, oximeter, wheelchair and specialized for sleep test
100/100
You use CSS sprites
Combining images into CSS sprites reduces the number of files the browser has to download and accelerates the loading time.
CSS sprites explained
A CSS sprite is a single file in which several smaller images are grouped and positioned one beside the other. You can display each small image in your page by applying CSS styles, and a single request is necessary to recover all the images. Use this method only for small images, such as icons, so the CSS sprite is not too heavy.
Example
Here is a CSS sprite example :
The page also applies the styles associated with the sprite:
.sprite {
background-image: url(img/sprite.png);
background-repeat: no-repeat;
display: block;
}
.sprite-browsers-firefox {
width: 31px;
height: 28px;
background-position: -74px 0;
}
Then you have just to define the right class in your HTML file, and the icon appears:
<span class="sprite sprite-browsers-firefox"></span>
How should I create CSS sprites?
Their creation can be complex, so we recommend using tools that easily generate them for you. Here are a few sprite generators:
100/100
Your <title> tag is an appropriate length
This page defines one title which contains less than 75 characters (see more information):
TriMedicare
The longer your title is, the more your chances are to see the search engines to truncate it or even to select another one from your page content.
100/100
You don't execute the same script several times
A library or an external script is usually intended to be called once per page. However, the use of widgets can lead to several useless executions.
Duplicate scripts
It is common to see scripts used multiple times on the same page. The most common cause is the integration of social network widgets. It can be useful to find them several times on the page. That is not a bad practice. However, you should be careful that those scripts don't slow down your page.
What happens when a script is included 2 times in the code? How many times is it loaded? Parsed? Executed?
Most modern web browsers download only once a script included 2 times. An exception persists: Firefox, which will load the resource as many times as mentioned if no effective caching policy is configured.
Apart from this exception, performance issues come during the parsing and execution of the scripts. Indeed, if a script is placed three times in the code, it will be parsed and executed 3 times, on all browsers.
Do not hesitate to read this article on that topic.
How to fix it?
There is a solution to use a script several times without parsing and executing more than once. You need to write some JavaScript code that checks if the script is present. If the script is already included, it just uses it, otherwise it injects it and uses it.
Consider the following example with the Facebook widget, described in the article. Whenever you want to integrate this functionality into your page, it is necessary to include the following code:
(function(d, s, id){
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) {return;}
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
The bold line checks the presence of the script in the document. So the script is included, parsed and executed only during the first call in the page. Other calls will fall in the case of the bold line, and therefore will just use the script that is already included and executed.
100/100
The extensions of your resources are consistent
The extension of a resource allows to identify easily its content type. You have no reason to indicate a different extension of the actual content type of the resource.
For instance, the file resource.js
must use a Content-Type
HTTP header equal to application/javascript
. You can check the Content-Type
HTTP header value using a debugger tool (e.g.: DevTools on Chrome).
100/100
1 resource does not define its content type
Each resource should define its content type in order to facilitate their interpretation by web browsers.
You have no reason to hide the type of a resource.
We advise you to set the "Content-Type" HTTP header on every resources of the page.
1 resource should define its content type:
It appears these files are hosted by a third-party, so they may not be within your control. However, you should consider any alternative to these resources to improve your page performance.
100/100
This page does not send cookies > 100kB
Keep the size of cookies as low as possible to minimize the impact on the loading time.
HTTP cookies are used to track a user to customize the page according to their profile. They are sent as an HTTP header from the web server to the browser. Then, each time the browser accesses to the server, it sends a request containing the cookie received at the first response. See more information.
100/100
This page does not send too many cookies
Keep the size of cookies as low as possible to minimize the impact on the loading time.
HTTP cookies are used to track a user to customize the page according to their profile. They are sent as an HTTP header from the web server to the browser. Then, each time the browser accesses to the server, it sends a request containing the cookie received at the first response. See more information.
Here are listed the 260 bytes of cookies used on this page:
VISITOR_INFO1_LIVE
: 121 bytes distributed on 11 request(s) (domain name: youtube)YSC
: 121 bytes distributed on 11 request(s) (domain name: youtube)test_cookie
: 18 bytes distributed on 1 request(s) (domain name: doubleclick)
100/100
Your characters are encoded in UTF-8
Your content is readable by the largest number of web users.
Encoding of characters
The encoding of characters indicates to the web browser how to interpret the bytes of the web page in order to convert them in readable characters by the user. Lots of encodings exist so that all the characters specific to each language are represented. Be aware that the supported groups of encoding are different from an engine to another one. If you ever use an encoding too specific, a lot of web users won’t be able to accurately interpret the page.
Why choosing the UTF-8?
The UTF-8 is known for being an encoding supported by almost every web user, and taking into account a large range of characters. Its universality is then particularly well suited to the web environment.
100/100
3 images use the PNG format in the right way
The choice of the right format for an image allows to reduce its weight.
The PNG format
The PNG image format is intended to the images requiring the transparency, or else to the small images having little details and colours.
Prefer the JPEG format...
The main problem of PNG format is to not support quality loss. Indeed, a format such as JPEG offers to "downgrade" the quality of the image without being perceived by the user. Doing so, you can reduce the quality of the image of about 25% whithout the user realizes it.
An image with an consequent weight will be therefore better compressed by using the JPEG format.
...or the PNG-8 format
In the case where your image necessarly requires using the transparency mecanism, not borne by the JPEG format, you should convert your "standard" PNG image, into PNG-8. This format, based upon a 256 color palette maximum allows to decrease the weight of the image whithout significantly affecting its overall quality. Tools such as pngquant or else tinypng will suport you in this procedure.
At last, if the quality given by the PNG-8 format is not appropriate for your image, you can get information on the possible advanced technics to get this behaviour without having an image in PNG format. For example, it is possible to halve your image in 2 JPEG images, one including the transparency data and the other one including the data related to the colours, and to gather the image on the customer's side with a CANVAS element.
For further information, please visit this article about image compression.
The choice of the PNG format on the images of this page doesn't have negative effect.
100/100
None of your images uses only one color
One request to an image composed of a unique color unnecessarily increases the data amount transmitted on the network.
Fetching an image composed of a single color is useless. CSS styles can achieve the same result in a more efficient way.
For instance, to draw a simple circle, you can use the following code:
#myElement {
background:#ff0000;
border-radius:50%;
width:160px;
height:160px;
}
All the images of this page are composed of several colors.
100/100
None of your titles are empty
<h1>
, <h2>
and <h3>
tags should contain keywords related to the content.
The titles included on this page provide content.
100/100
Redirects are lightweight
An HTTP redirect's content is not used by web browsers. So, it provides an unnecessary weight that should be as small as possible.
Redirects on the web
Redirects can be temporary (302 HTTP code) or permanent (301).
This mechanism is for example used for secondary domains (.net to .com), the language detection mechanisms, etc.
How to fix the issue?
First, ensure that the redirect is unavoidable. In this case, it is necessary to reduce or completely remove the contents of the server responses for redirects.
A redirect should be < 1kB.
There isn't too heavy redirect.
100/100
HTTP error responses are lightweight
The content of a HTTP error response is not used by web browsers. So, it provides an unnecessary weight that should be as small as possible.
Responses in error on the web
The resources that can be reached by the browser return a HTTP code between 400 and 599.
How to fix the issue?
First, you have to avoid requesting resources that return an error. Moreover, reduce or completely remove the contents of the server error responses.
A response error should be < 10kB.
There is no heavy resource in error.
100/100
No Flash resource detected
Flash is considered obsolete in 2015. HTML5 is more powerful and more widely supported. Using Flash can lead to compatibility issues and may send negative signals to your users (eg the browser warning that content was blocked because it could be dangerous).
Moreover, Google shows directly in its mobile search results that the page may not work on the user's device.
Congratulations, this page doesn't contain Flash resources.
100/100
The favicon is lightweight
The favicon must be as lightweight as possible.
The favicon on the web
This small image allows you to display a logo on the browser tabs for instance.
How to fix the issue?
A favicon should be < 10kB.
The favicon (https://www.trimedicare.co.in/favicon.ico) isn't too heavy (379bytes).
100/100
Silverlight plugin is not used
Silverlight plugin is considered obsolete in 2015. HTML5 is more powerful and more widely supported. Using Silverlight plugin can lead to compatibility issues and may send negative signals to your users (e.g. the browser indicating that content was blocked because it could be dangerous).
Congratulations, this page doesn't use Silverlight plugin.
100/100
The EOT font format is well declared
Make sure that the EOT format will be well used for your visitors using Internet Explorer <= 8.
Use the EOT format for Internet Explorer <= 8
The web browsers (Firefox, Chrome, Safari, Internet Explorer, Opera ...) do not support the same font formats. Your goal is to use the lightest possible format for each platform. When you use a font, you can specify several formats, via the @font-face CSS instruction: so the browser will use the first supported format.
This is true for all browsers except Internet Explorer <= 8, that misinterpret the @font-face instruction: it will use only the first format declared. And the lighter font format for this kind of browser is the EOT format.
How to use EOT format only for IE <= 8?
Only Internet Explorer supports the EOT format. So declare it in the first position in the @font-face
's src
property: Internet Explorer will be able to understand that it must use
the EOT format, and other browsers, that do not support EOT, will use
another format.
Here is an article about this topic to help you determine the right order to declare your fonts. TL;DR: the best order for your webfont formats: EOT, WOFF2, WOFF, TTF, and SVG.
All fonts with EOT format are placed in the first position in the @font-face instruction.
100/100
Your font formats are well used
Be sure to deliver the most suitable font format for each platform.
Declaring several font formats
The web browsers (Firefox, Chrome, Safari, Internet Explorer, Opera ...) do not support all the same font formats. Your goal is to use the lightest possible format for each platform. When you use a font, you can specify several formats, via the @font-face CSS instruction: so the browser will use the first compatible format that it supports.
How to declare your font formats?
Check if your formats are well ordered in the @font-face
's src
property. Here's an article about this topic to help you to determine the right order to declare your fonts. Here's the order to respect for your webfont formats: EOT, WOFF2, WOFF, TTF, and SVG.
All fonts are well ordered in the @font-face
instructions.
100/100
robots.txt file is well defined
Indicate to web crawlers which URLs should be explored on your website.
The robots.txt file
Place your robots.txt file in the root of the website. It will be interpreted by the robots in charge of your SEO. It delivers instructions to specify the pages to explore by robots, like Google bot.
Note that these directives are indicative only. A lambda robot will not be blocked by the restrictions specified by the file.
We detected a robots.txt file on this website.
100/100
The page handles the www redirect
Redirect https://trimedicare.co.in
to https://www.trimedicare.co.in/
in order to avoid duplicate content.
What is the difference ?
Adding the "www" in front of a web address is a convention, that remains completely optional.
Some users are accustomed to access a website by adding www, and others do not. We advise you to deliver your content for these two addresses.
To avoid duplicate content issues with search engines, it is necessary to use a redirect (permanent) to point one of the addresses to the other.
You perform a 301 redirect from https://trimedicare.co.in
to https://www.trimedicare.co.in/
.
The page is reachable both with and without "www" before the URL.
100/100
The secure version is used systematically
Users using the HTTP version of the page must be redirected to the secure version.
HTTPs redirect
Even if a page is secure, visitors may still use the HTTP version (via an external link, or because they have bookmarked the HTTP version of the page, for example). Always set up a redirection so that users accessing the page using the HTTP protocol are redirected to a secure version.
Use the administration interface of your hosting provider or contact the administrator to set up an automatic redirection from the HTTP version to the secure version.
Your users are automatically redirected to the secure version of the page.
100/100
All cookies are secure
A cookie sent from the server to a web browser via the HTTPS protocol should only transits on a secure connection (except for some specific cases).
HTTP cookies
HTTP cookies are set by the server to the web browser via the Set-Cookie
HTTP header. Then, the browser transmits the cookies to the server for the next requests by using the Cookie
HTTP header. When the server uses a secure connection (HTTPS), the
cookie probably contains some sensitive data: you have to guarantee that
the cookie cannot be exploited on an insecure connection.
The Secure directive
By adding the Secure
instruction in the Set-Cookie
HTTP header, the server informs the browser that it is allowed to transmit the cookie over secure connection only. Read this blog post to learn more.
Shared infrastructure cookies
With some hosting providers, especially on shared infrastructures, cookies may be set without any control on your part. The information they contain is usually not sensitive. You can check this and ignore this warning if that applies to you.
100/100
All labels refer to an element
The for
attribute associates the label to another element of the page and help screen readers to better interpret your content.
Label and for attribute
A label describes an element (a text to fill, a checkbox, etc.). When a user clicks on a label associated with a radio button, the option will be directly selected, improving the user experience.
How to use a label?
Associate the label to an element of the page by indicating the ID of the element. Example:
<form action="/action">
<label for="myId">
<input type="radio" name="myOptions" id="myId" value="1" >
100/100
The page doesn't use client-side redirection
No client-side redirection (window-location, meta refresh...) has been triggered to display the page. Client-side redirections are to be avoided in any way possible.
Report Generated by : www.dareboost.com