grains.com

grains.com is SSL secured

Free website and domain report on grains.com

Last Updated: 18th February, 2022 Update Now
Overview

Snoop Summary for grains.com

This is a free and comprehensive report about grains.com. Grains.com is hosted in United States on a server with an IP address of 13.226.31.101, where USD is the local currency and the local language is English. If grains.com was to be sold it would possibly be worth $357 USD (based on the daily revenue potential of the website over a 24 month period). Grains.com is somewhat popular with an estimated 167 daily unique visitors. This report was last updated 18th February, 2022.

About grains.com

Site Preview: grains.com grains.com
Title: Local Cash Grain Bids and Real-time Commodity Prices | Grains.com
Description: Grains.com is an online marketplace for farmers and grain buyers - Cash grain bid prices and real-time commodity quotes on a custom, all-inclusive and interactive dashboard
Keywords and Tags: business
Related Terms: an essential grain in the new world diet, commodity definition, commodity derivatives, commodity eggs, commodity market, commodity prices, grain, grain silo supplier, grains, malted grains
Fav Icon:
Age: Over 26 years old
Domain Created: 13th March, 1998
Domain Updated: 12th March, 2021
Domain Expires: 11th March, 2026
Review

Snoop Score

1/5

Valuation

$357 USD
Note: All valuation figures are estimates.

Popularity

Low
Note: Popularity is estimated.

Rank, Reach and Authority

Alexa Rank: 7,018,521
Alexa Reach:
SEMrush Rank (US):
SEMrush Authority Score:
Moz Domain Authority: 0
Moz Page Authority: 0

Organic vs Paid (Google Ads)

Traffic

Visitors

Daily Visitors: 167
Monthly Visitors: 5,083
Yearly Visitors: 60,955
Note: All visitors figures are estimates.

Visitors By Country

Revenue

Revenue

Daily Revenue: $0 USD
Monthly Revenue: $14 USD
Yearly Revenue: $174 USD
Note: All revenue figures are estimates.

Revenue By Country

SEO

Backlinks Analysis (SEMrush)

Top New Follow Links

Top Ranking Keywords (US)

Domain Analysis

Value Length
Domain: grains.com 10
Domain Name: grains 6
Extension (TLD): com 3
Expiry Check:

Page Speed Analysis

Average Load Time:
Load Time Comparison:

PageSpeed Insights

Avg. (All Categories) 55
Performance 41
Accessibility 62
Best Practices 69
SEO 82
PWA 22
0–49 (Fail) 50–89 (Average) 90–100 (Pass)
Simulate loading on desktop
41

Performance

Indicates how well the page is performing and highlights opportunities where performance may be improved for grains.com. This includes details about optimizing page load times which can result in a better user experience.

Metrics

First Contentful Paint — 0.6 s
The time taken for the first image or text on the page to be rendered.
Cumulative Layout Shift — 0.048
Cumulative Layout Shift is the measurement of visible elements collective movement within the viewport.
View Data

Audits

First Meaningful Paint — 0.6 s
The time taken for the primary content of the page to be rendered.
Network Requests
Below is a list of network requests that were made during page load.
URL Protocol Start Time (Ms) End Time (Ms) Transfer Size (Bytes) Resource Size (Bytes) Status Code MIME Type Resource Type
http://grains.com/
http/1.1
0
86.679000000004
448
0
301
text/html
https://grains.com/
h2
87.092000001576
185.69600000046
2841
5195
200
text/html
Document
https://grains.com/styles/vendor.css
h2
198.32300001872
307.32300001546
42466
308509
200
text/css
Stylesheet
https://fonts.googleapis.com/css?family=Raleway:400,700,800&subsetting=all
h2
198.67300000624
210.56200002204
1346
4749
200
text/css
Stylesheet
https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css
h2
198.94800000475
229.98000000371
7922
31000
200
text/css
Stylesheet
https://grains.com/scripts/libs/please-wait.css
h2
199.15400000173
386.12199999625
1177
4118
200
text/css
Stylesheet
https://grains.com/styles/main.css
h2
199.54800000414
387.88799999747
13179
68585
200
text/css
Stylesheet
https://grains.com/scripts/libs/please-wait.f30aeff6.js
h2
200.04300001892
289.72699999576
2478
8484
200
application/javascript
Script
https://grains.com/scripts/libs/utils.d41d8cd9.js
h2
200.58200001949
290.05400001188
422
0
200
application/javascript
Script
https://grains.com/scripts/vendor.81a39143.js
h2
201.0270000028
298.01500000758
629167
2107338
200
application/javascript
Script
https://grains.com/scripts/libs/chart-from-quote-plus.04f2f291.js
h2
201.27499999944
289.31799999555
4901
18703
200
application/javascript
Script
https://grains.com/scripts/libs/zozo.tabs.min.ca035427.js
h2
201.55500000692
288.51800001576
15993
80775
200
application/javascript
Script
https://grains.com/scripts/libs/massautocomplete.min.398db711.js
h2
201.92600000883
385.46800002223
2324
5068
200
application/javascript
Script
https://grains.com/scripts/libs/barchart-marketdata-ui-1.0.20f760b0.js
h2
202.16400001664
388.64099999773
43771
236006
200
application/javascript
Script
https://grains.com/scripts/scripts.73640d4f.js
h2
203.06300002267
387.22699999926
66911
247295
200
application/javascript
Script
https://grains.com/images/whitelabel/logo_login.png
h2
410.46800001641
585.43200002168
7942
7475
200
image/png
Image
https://www.google-analytics.com/analytics.js
h2
486.02199999732
491.07200000435
20630
50205
200
text/javascript
Script
https://webapp-proxy.aws.barchart.com/v1/platform-services/apps/all/getTranslatedSymbols.php?symbols=ZC%235%2CZS%235%2CZM%233%2CZL%233%2CZW%234%2CKE%233%2CMW%233%2CZO%233%2CCT%233%2CSB%233%2CCC%233%2CKC%233%2COJ%233%2CLE%235%2CGF%233%2CHE%233%2CCL%233%2CHO%233%2CRB%232%2CNG%233%2CZK%232%2CGC%233%2CSI%233%2CHG%232%2CPA*0%2CPL*0%2CZB%232%2CZN%232%2CZF%231%2CZQ%231%2CGE%232%2CE6*0%2CJ6*0%2CA6*0%2CB6*0%2CD6*0%2CS6*0%2CDX*0%2CYM%231%2CES%231%2CNQ%231%2CEW%231%2CRJ%231%2CZC%239%2CZS%2311%2CZW%236%2CKE%236%2CZL%236%2CMW%236%2CZO%234%2CZM%238%2CLE%239%2CGF%239%2CHE%239%2CDL%239%2CCT%234%2COJ%234%2CKC%234%2CCC%234%2CSB%234%2CLS%234%2CCL%233%2CHO%233%2CZK%233%2CRB%233%2CNG%233%2CYM%232%2CNQ%232%2CES%232%2CZQ%232%2CD6%232%2CDX%232%2CE6%232%2CGE%232%2CJ6%232%2CGC%232%2CSI%232%2CZB%232%2CZN%232%2CZF%232%2CZT%232&noLookupKey=true&noCache=false&_=1645198163533
h2
1808.2890000078
2206.7470000184
1528
2376
200
application/json
XHR
https://grains.com/protos/webapi_1_51.proto
h2
1886.3870000059
1987.9120000114
108851
108427
200
binary/octet-stream
XHR
https://grains.com/locale/locale-en.json
h2
2309.9140000122
2490.6009999977
10289
26202
200
application/json
XHR
https://grains.com/styles/whitelabel/grains.css
h2
2387.4800000049
2488.0000000121
1617
4618
200
text/css
Stylesheet
https://grains.com/views/navs/nav_us.html
h2
2395.3660000116
2489.5290000131
2665
9451
200
text/html
XHR
https://grains.com/views/landing.html
h2
2396.3250000088
2488.3600000176
1265
1914
200
text/html
XHR
https://www.google-analytics.com/j/collect?v=1&_v=j96&a=2131588201&t=pageview&_s=1&dl=https%3A%2F%2Fgrains.com%2F&dp=%2F&ul=en-us&de=UTF-8&dt=Local%20Cash%20Grain%20Bids%20and%20Real-time%20Commodity%20Prices%20%7C%20Grains.com&sd=24-bit&sr=800x600&vp=1350x940&je=0&_u=KEBAAAABAAAAAC~&jid=712255933&gjid=1228891403&cid=467576210.1645198163&tid=UA-2009749-50&_gid=1344168982.1645198163&_r=1&_slc=1&z=1512312040
h2
2507.3410000186
2585.5230000161
611
4
200
text/plain
XHR
https://grains.com/images/field2.a43c6cc8.jpg
h2
2590.5889999995
2611.544000014
44429
43958
200
image/jpeg
Image
https://grains.com/images/badge-desktop.693d3537.svg
h2
2594.785000023
2685.8440000215
2974
7481
200
image/svg+xml
Image
https://grains.com/images/badge-apple.1c6e70eb.svg
h2
2595.5890000041
2688.4410000057
4125
8582
200
image/svg+xml
Image
https://grains.com/images/badge-google-play.ce788ac2.svg
h2
2596.5520000027
2689.2389999994
2462
5217
200
image/svg+xml
Image
https://grains.com/images/whitelabel/cmdty-primary-by-bc-tm.png
h2
2801.9210000057
2886.5230000229
8897
8429
200
image/png
Image
https://stats.g.doubleclick.net/j/collect?t=dc&aip=1&_r=3&v=1&_v=j96&tid=UA-2009749-50&cid=467576210.1645198163&jid=712255933&gjid=1228891403&_gid=1344168982.1645198163&_u=KEBAAAAAAAAAAC~&z=1874020377
h2
2997.7480000234
3006.3749999972
681
1
200
text/plain
XHR
https://www.google-analytics.com/collect?v=1&_v=j96&a=2131588201&t=pageview&_s=2&dl=https%3A%2F%2Fgrains.com%2F&dp=%2Fus&ul=en-us&de=UTF-8&dt=Local%20Cash%20Grain%20Bids%20and%20Real-time%20Commodity%20Prices%20%7C%20Grains.com&sd=24-bit&sr=800x600&vp=1350x940&je=0&_u=KEBAAAABAAAAAC~&jid=&gjid=&cid=467576210.1645198163&tid=UA-2009749-50&_gid=1344168982.1645198163&z=1519652703
h2
3089.4290000142
3093.1070000224
597
35
200
image/gif
Image
https://www.google-analytics.com/collect?v=1&_v=j96&a=2131588201&t=pageview&_s=3&dl=https%3A%2F%2Fgrains.com%2F&dp=%2Fus&ul=en-us&de=UTF-8&dt=Local%20Cash%20Grain%20Bids%20and%20Real-time%20Commodity%20Prices%20%7C%20Grains.com&sd=24-bit&sr=800x600&vp=1350x940&je=0&_u=KEBAAAABAAAAAC~&jid=&gjid=&cid=467576210.1645198163&tid=UA-2009749-50&_gid=1344168982.1645198163&z=1241081853
h2
3090.079000016
3093.5370000079
597
35
200
image/gif
Image
Network Round Trip Times — 0 ms
High Network RTT (Round Trip Times) can have a large impact on performance. Providing servers geographically closer to the user could improve performance.
Server Backend Latencies — 0 ms
High server latencies indicate the server is overloaded or has a poor backend performance.
Tasks
Below is a list of the top-level main thread tasks that executed during page load.
Start Time (Ms) End Time (Ms)
301.473
8.243
310.282
5.211
421.599
77.094
499.63
10.417
513.648
5.094
518.788
81.02
599.823
22.457
704.831
18.757
725.565
81.569
904.104
1609.802
2514.002
84.472
2608.365
99.661
2708.083
14.462
2722.56
192.241
2917.424
110.086
3029.631
71.359
3101.01
100.212
3223.257
75.703
3470.188
28.079
Diagnostics
Below is a collection of useful page vitals.
View Data
Metrics
Below is a collection of metrics.
View Data
Script Treemap Data
Provide as required, for treemap app.

Other

Properly size images — Potential savings of 8 KiB
Images can slow down the page's load time. Grains.com should consider serving more appropriate-sized images.
URL Resource Size (Bytes) Potential Savings (Bytes)
https://grains.com/images/whitelabel/cmdty-primary-by-bc-tm.png
8429
8270
Defer offscreen images
Time to Interactive can be slowed down by resources on the page. Grains.com should consider lazy-loading offscreen and hidden images.
Minify CSS
Cascading Style Sheets (CSS) files can contribute to network payload sizes. Grains.com should consider minifying CSS files.
Minify JavaScript — Potential savings of 20 KiB
JavaScript (JS) files can contribute to network payload sizes and increase script parse times. Grains.com should consider minifying JS files.
URL Transfer Size (Bytes) Potential Savings (Bytes)
https://grains.com/scripts/libs/barchart-marketdata-ui-1.0.20f760b0.js
43771
15094
https://grains.com/scripts/libs/zozo.tabs.min.ca035427.js
15993
2599
https://grains.com/scripts/libs/chart-from-quote-plus.04f2f291.js
4901
2320
Reduce unused CSS — Potential savings of 53 KiB
Dead and/or unused rules in Style Sheets (CSS) can contribute to network payload sizes. Grains.com should consider removing dead rules from style sheets and deferring the loading of CSS not used for above-the-fold content.
URL Transfer Size (Bytes) Potential Savings (Bytes)
https://grains.com/styles/vendor.css
42466
41619
https://grains.com/styles/main.css
13179
12817
Efficiently encode images
Unoptimized images can consume more cellular data than what is necessary.
Serve images in next-gen formats — Potential savings of 23 KiB
Consider JPEG 2000, JPEG XR or WebP image formats which provide better compression than PNG and JPEG.
URL Resource Size (Bytes) Potential Savings (Bytes)
https://grains.com/images/field2.a43c6cc8.jpg
43958
23456
Enable text compression — Potential savings of 66 KiB
Text-based resources should be served with compression, such as gzip, deflate or brotli.
URL Transfer Size (Bytes) Potential Savings (Bytes)
https://grains.com/protos/webapi_1_51.proto
108427
67721
Preconnect to required origins
Resource hints, such as 'preconnect' or 'dns-prefetch', may assist in establishing early connections to important third-party origins.
Initial server response time was short — Root document took 100 ms
It is advised to keep the server response time short for the main document, because all other requests depend on it.
URL Time Spent (Ms)
https://grains.com/
99.598
Avoid multiple page redirects — Potential savings of 190 ms
Redirects can cause additional delays before the page can begin loading. Grains.com should avoid multiple or unnecessary page redirects.
URL Time Spent (Ms)
http://grains.com/
190
https://grains.com/
0
Preload key requests
Key requests can be preloaded by using '<link rel=preload>'. Grains.com should consider using '<link rel=preload>' to prioritize fetching resources that are currently requested later in page load.
Use video formats for animated content
Large GIFs are inefficient for delivering animated content. It is recommended to use MPEG4/WebM videos for animations and PNG/WebP for static images instead of GIF.
Remove duplicate modules in JavaScript bundles
Ensure that no duplicate JavaScript modules from bundles exist to reduce bytes consumed by network activity.
Avoid serving legacy JavaScript to modern browsers — Potential savings of 9 KiB
Polyfills and transforms enable legacy browsers to use new JavaScript features. For bundled JavaScript it is recommended to adopt a modern script deployment strategy using module/nomodule feature detection. This will reduce the amount of code shipped to modern browsers.
URL Potential Savings (Bytes)
https://grains.com/scripts/vendor.81a39143.js
8788
Preload Largest Contentful Paint image
It is recommended to preload images used by LCP elements, to improve LCP time.
Avoids enormous network payloads — Total size was 1,031 KiB
Large network payloads can cost users money and are linked to long load times.
URL Transfer Size (Bytes)
https://grains.com/scripts/vendor.81a39143.js
629167
https://grains.com/protos/webapi_1_51.proto
108851
https://grains.com/scripts/scripts.73640d4f.js
66911
https://grains.com/images/field2.a43c6cc8.jpg
44429
https://grains.com/scripts/libs/barchart-marketdata-ui-1.0.20f760b0.js
43771
https://grains.com/styles/vendor.css
42466
https://www.google-analytics.com/analytics.js
20630
https://grains.com/scripts/libs/zozo.tabs.min.ca035427.js
15993
https://grains.com/styles/main.css
13179
https://grains.com/locale/locale-en.json
10289
Avoids an excessive DOM size — 155 elements
A large DOM (Document Object Model) will increase memory usage, cause longer system calculations as well as costly layout reflows.
Statistic Element Value
Total DOM Elements
155
Maximum DOM Depth
*
16
Maximum Child Elements
14
Avoid chaining critical requests — 13 chains found
Below is a list of Critical Request Chains, which shows which resources are loaded with a high priority. Grains.com should consider reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load.
User Timing marks and measures
Make use of the User Timing API to measure an app's real-world performance during key user experiences.
All text remains visible during webfont loads
Make use of the font-display CSS feature, which will ensure text is user-visible while webfonts are loading.
Keep request counts low and transfer sizes small — 32 requests • 1,031 KiB
It is advised to add a budgets.json file in order to set budgets for the quantity and size of page resources.
Resource Type Requests Transfer Size (Bytes)
Total
32
1055506
Script
9
786597
Other
8
126338
Image
8
72023
Stylesheet
6
67707
Document
1
2841
Media
0
0
Font
0
0
Third-party
8
33912
Minimize third-party usage — Third-party code blocked the main thread for 20 ms
It is advised to either limit, remove or delay the loading of redundant third-party code which may be significantly impacting load performance.
Third-Party Transfer Size (Bytes) Main-Thread Blocking Time (Ms)
22435
18.835
7922
0
1346
0
681
0
Lazy load third-party resources with facades
Consider replacing third-party embeds with a facade until they are required (use lazy loading).
Largest Contentful Paint element — 1 element found
The element which was identified as the Largest Contentful Paint.
Element
Largest Contentful Paint image was not lazily loaded
Above-the-fold images that are lazily loaded render later in the page lifecycle, which can delay the largest contentful paint.
Element
Avoid large layout shifts — 2 elements found
Below is a list of all DOM elements that contribute to the CLS of the page.
Element CLS Contribution
0.048148148148148
0.00018063992134372
Avoids `document.write()`
Avoid or limit the use of external scripts that are dynamically injected via 'document.write()' as users on slow connections will be delayed by tens of seconds.
Avoid long main-thread tasks — 10 long tasks found
Below is a list of the longest tasks on the main thread, which is useful when identifying the worst input delay contributors.
URL Start Time (Ms) Duration (Ms)
https://grains.com/scripts/vendor.81a39143.js
1460
1610
https://grains.com/scripts/vendor.81a39143.js
3520
192
https://grains.com/scripts/vendor.81a39143.js
3310
110
https://grains.com/scripts/vendor.81a39143.js
3420
100
https://grains.com/scripts/vendor.81a39143.js
3783
100
https://grains.com/
352
82
https://grains.com/scripts/libs/please-wait.f30aeff6.js
580
81
Unattributable
190
77
https://grains.com/scripts/vendor.81a39143.js
3883
76
https://www.google-analytics.com/analytics.js
3712
71
Avoid non-composited animations
It is recommended to avoid non-composited animations which are often janky and increase CLS.
Has a `<meta name="viewport">` tag with `width` or `initial-scale`
It is advised to use a '<meta name="viewport">' tag for the optimization of grains.com on mobile screens.

Budgets

Performance budget
It is advised to keep the quantity and size of all network requests under the targets set by the provided performance budget.
Timing budget
It is advised to set a timing budget to monitor the performance of your site.

Metrics

Time to Interactive — 3.9 s
The time taken for the page to become fully interactive.

Other

Eliminate render-blocking resources — Potential savings of 150 ms
Resources, such as JavaScript and style sheets, can block the first paint of the page. Grains.com should consider delivering critical JavaScript/style sheets (JS/CSS) inline and deferring all non-critical JS/CSS.
URL Transfer Size (Bytes) Potential Savings (Ms)
https://grains.com/styles/vendor.css
42466
120
https://fonts.googleapis.com/css?family=Raleway:400,700,800&subsetting=all
1346
230
https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css
7922
230
Reduce unused JavaScript — Potential savings of 521 KiB
It is advised to remove unused JavaScript in order to reduce bytes consumed by network activity.
URL Transfer Size (Bytes) Potential Savings (Bytes)
https://grains.com/scripts/vendor.81a39143.js
629167
439762
https://grains.com/scripts/scripts.73640d4f.js
66911
58324
https://grains.com/scripts/libs/barchart-marketdata-ui-1.0.20f760b0.js
43771
35134
Reduce JavaScript execution time — 2.0 s
JavaScript (JS) execution time can be lowered by reducing the time required for parsing, compiling and executing JS. Delivering smaller JS payloads may help with this.
URL Total CPU Time (Ms) Script Evaluation (Ms) Script Parse (Ms)
https://grains.com/scripts/vendor.81a39143.js
2251.24
1834.781
104.165
https://grains.com/
294.078
80.279
1.776
Unattributable
124.579
3.407
0.176
https://www.google-analytics.com/analytics.js
90.842
17.658
1.114
Minimize main-thread work — 2.8 s
Main-thread work timing can be lowered by reducing the time required for parsing, compiling and executing JS. Delivering smaller JS payloads may help with this.
Category Time Spent (Ms)
Script Evaluation
1949.793
Other
396.195
Style & Layout
125.511
Script Parsing & Compilation
119.849
Parse HTML & CSS
102.494
Rendering
89.839
Garbage Collection
28.585

Metrics

Speed Index — 2.5 s
The time taken for the page contents to be visibly populated.
Total Blocking Time — 1,930 ms
The total blocking time is the sum of all time periods between First Contentful Paint and Time to Interactive (when task length exceeded 50ms).
Largest Contentful Paint — 3.6 s
The timing of the largest text or image that is painted.

Audits

Max Potential First Input Delay — 1,610 ms
Users could experience a delay when interacting with the page.

Other

Serve static assets with an efficient cache policy — 19 resources found
Grains.com can speed up repeat visits by increasing the cache lifetime, which is essentially how long before a cached copy expires.
URL Cache TTL (Ms) Transfer Size (Bytes)
https://grains.com/scripts/libs/barchart-marketdata-ui-1.0.20f760b0.js
0
43771
https://grains.com/scripts/libs/zozo.tabs.min.ca035427.js
0
15993
https://grains.com/scripts/libs/chart-from-quote-plus.04f2f291.js
0
4901
https://grains.com/scripts/libs/please-wait.f30aeff6.js
0
2478
https://grains.com/scripts/libs/massautocomplete.min.398db711.js
0
2324
https://grains.com/styles/whitelabel/grains.css
0
1617
https://grains.com/scripts/libs/please-wait.css
0
1177
https://grains.com/scripts/libs/utils.d41d8cd9.js
0
422
https://grains.com/scripts/vendor.81a39143.js
3600000
629167
https://grains.com/scripts/scripts.73640d4f.js
3600000
66911
https://grains.com/images/field2.a43c6cc8.jpg
3600000
44429
https://grains.com/styles/vendor.css
3600000
42466
https://grains.com/styles/main.css
3600000
13179
https://grains.com/images/whitelabel/cmdty-primary-by-bc-tm.png
3600000
8897
https://grains.com/images/whitelabel/logo_login.png
3600000
7942
https://grains.com/images/badge-apple.1c6e70eb.svg
3600000
4125
https://grains.com/images/badge-desktop.693d3537.svg
3600000
2974
https://grains.com/images/badge-google-play.ce788ac2.svg
3600000
2462
https://www.google-analytics.com/analytics.js
7200000
20630
Does not use passive listeners to improve scrolling performance
Improve the page's scroll performance by marking touch and wheel event listeners as 'passive'.
Source
Image elements do not have explicit `width` and `height`
Reduce layout shifts and improve CLS by setting explicit width and height properties on image elements.
URL
https://grains.com/images/badge-apple.1c6e70eb.svg
https://grains.com/images/whitelabel/cmdty-primary-by-bc-tm.png
https://grains.com/images/badge-desktop.693d3537.svg
https://grains.com/images/badge-google-play.ce788ac2.svg
62

Accessibility

Indicates how accessible the page is and highlights opportunities where the page can be made more accessible to users of grains.com. This includes details about various page attributes that can be optimized.

Navigation

`[accesskey]` values are unique
Access keys assist users with focusing on different parts of the page. Each access key should be unique for proper navigation.
The page contains a heading, skip link, or landmark region
It is advised to provide ways to bypass repetitive content, allowing users to navigate the page efficiently.
`[id]` attributes on active, focusable elements are unique
Ensure all focusable elements have a unique id value to allow them to be visible to users of assistive technologies, like a screen reader.
Heading elements appear in a sequentially-descending order
Properly order all headers and do not skip heading levels to better the navigation and readability for users of assistive technologies, like a screen reader.
No element has a `[tabindex]` value greater than 0
Although technically valid, a tabindex value greater than 0 often creates frustrating experiences for users who rely on assistive technologies.

ARIA

`[aria-*]` attributes match their roles
Avoid mismatching 'aria-*' attributes and their 'role' value, as it invalidates the attribute.
`button`, `link`, and `menuitem` elements have accessible names
Without accessible names on elements, screen readers will default to announcing a generic name, which means your content will be less accessible to users who rely on screen readers.
`[aria-hidden="true"]` is not present on the document `<body>`
If aria-hidden=true is set on the document body, assistive technologies, like a screen reader will work inconsistently.
`[aria-hidden="true"]` elements do not contain focusable descendents
Interactive elements within an aria-hidden=true element are unavailable to users of assistive technologies, like a screen reader.
ARIA input fields have accessible names
Generic names are announced to users of assistive technologies, like a screen reader, when an input field does not have an accessible name specified.
ARIA `meter` elements have accessible names
Without accessible names on elements, screen readers will default to announcing a generic name, which means your content will be less accessible to users who rely on screen readers.
ARIA `progressbar` elements have accessible names
Without accessible names on elements, screen readers will default to announcing a generic name, which means your content will be less accessible to users who rely on screen readers.
`[role]`s have all required `[aria-*]` attributes
Some ARIA roles have required 'aria-*' attributes, which provide essential information about state and functionality.
Elements with an ARIA `[role]` that require children to contain a specific `[role]` have all required children.
Some ARIA parent roles cannot perform their intended functions if specific child roles are not used.
`[role]`s are contained by their required parent element
Some ARIA child roles cannot perform their intended functions if specific parent roles are not used.
`[role]` values are valid
All ARIA roles require valid values to perform their intended functions.
ARIA toggle fields have accessible names
Generic names are announced to users of assistive technologies, like a screen reader, when a toggle field does not have an accessible name specified.
ARIA `tooltip` elements have accessible names
Without accessible names on elements, screen readers will default to announcing a generic name, which means your content will be less accessible to users who rely on screen readers.
ARIA `treeitem` elements have accessible names
Without accessible names on elements, screen readers will default to announcing a generic name, which means your content will be less accessible to users who rely on screen readers.
`[aria-*]` attributes have valid values
ARIA attributes cannot be interpreted with invalid values when used by screen readers and other assistive technologies.
`[aria-*]` attributes are valid and not misspelled
ARIA attributes cannot be interpreted with invalid names when used by screen readers and other assistive technologies.
ARIA IDs are unique
Ensure all ARIA ID values are unique to prevent elements from being overlooked by assistive technologies, like a screen reader.

Names and labels

Buttons have an accessible name
Buttons become unusable as they are announced simply as "button" when the button does not have an accessible name, when used by screen readers and other assistive technologies.
Document has a `<title>` element
Search engines, screen reader users and other assistive technology users rely on the title to provide an overview of the page and to help determine if the page is relevant to their search.
No form fields have multiple labels
Having multiple labels for form fields can be confusing to assistive technologies, like a screen reader.
`<frame>` or `<iframe>` elements have a title
Screen reader users and other assistive technology users rely on frame titles to describe the contents of frames.
`<input type="image">` elements have `[alt]` text
Input buttons with alternative text assist screen readers and other assistive technology users to understand its purpose.
Form elements have associated labels
Screen readers and other assistive technologies rely on labels to properly announce form controls.
`<object>` elements have `[alt]` text
It is advised that alt text is used on '<object>' elements in order to provide meaning to screen reader and other assistive technology users, as these technologies are unable to translate non-text content.

Tables and lists

`<dl>`'s contain only properly-ordered `<dt>` and `<dd>` groups, `<script>`, `<template>` or `<div>` elements.
Screen readers and other assistive technologies may produce poor and inaccurate output when definition lists are not properly marked up.
Definition list items are wrapped in `<dl>` elements
In order for screen readers and other assistive technologies to properly announce definition list items ('<dt>' and '<dd>'), they must be wrapped in parent a '<dl>' element.
Lists contain only `<li>` elements and script supporting elements (`<script>` and `<template>`).
Use proper list structure to aid screen readers and other assistive technologies.
List items (`<li>`) are contained within `<ul>` or `<ol>` parent elements
In order for screen readers to announce list items, ensure that list items ('<li>') are contained within parent '<ul>' or '<ol>' tags.
Cells in a `<table>` element that use the `[headers]` attribute refer to table cells within the same table.
Screen readers and other assistive technologies have features to make navigating tables easier. Ensure that '<td>' cells using the headers attribute only refer to other cells in the same table, to improve screen reader user experience.
`<th>` elements and elements with `[role="columnheader"/"rowheader"]` have data cells they describe.
Screen readers and other assistive technologies have features to make navigating tables easier. Ensure that table headers refer to some set of cells, to improve screen reader user experience.

Internationalization and localization

`<html>` element has a valid value for its `[lang]` attribute
Specify a valid BCP 47 language in order to help screen readers and other assistive technologies announce text properly.
`[lang]` attributes have a valid value
Specify a valid BCP 47 language on elements in order to help screen readers and other assistive technologies announce text properly.

Best practices

The document does not use `<meta http-equiv="refresh">`
Pages that refresh automatically cause a poor user experience as focus is directed back to the top of the page unexpectedly.

Audio and video

`<video>` elements contain a `<track>` element with `[kind="captions"]`
Grains.com may provide assistance to deaf or hearing-impaired users with captions on videos.

Contrast

Background and foreground colors do not have a sufficient contrast ratio.
Many (if not most) users find low-contrast text difficult or impossible to read.
Failing Elements

Internationalization and localization

`<html>` element does not have a `[lang]` attribute
It is advised to provide a lang attribute so that screen readers and other assistive technologies are guaranteed to announce the page's text correctly. When not provided, the user's default language setting will be used which may cause inaccuracies.
Failing Elements

Names and labels

Image elements do not have `[alt]` attributes
Provide short and descriptive alternative text where possible on informative elements.
Failing Elements
Links do not have a discernible name
In order to improve the navigation for screen reader and other assistive technology users, use link text that is unique, focusable and discernible.

Best practices

`[user-scalable="no"]` is used in the `<meta name="viewport">` element or the `[maximum-scale]` attribute is less than 5.
For users with low vision who rely on screen magnification, ensure that zooming is not disabled.
Failing Elements

Manual Checks

The page has a logical tab order
The visual layout should be logical in its tab order and users cannot focus elements that are offscreen.
Interactive controls are keyboard focusable
Ensure that custom interactive controls are keyboard focusable and that a focus indicator is displayed.
Interactive elements indicate their purpose and state
Ensure that interactive elements (such as links and buttons) are distinguishable from non-interactive elements and that they indicate their state.
The user's focus is directed to new content added to the page
When new content (such as a dialogue) is added to the page, the user's focus should be directed to it.
User focus is not accidentally trapped in a region
Avoid focus being accidentally trapped when a user tabs in and out of controls or regions on page.
Custom controls have associated labels
Ensure that custom interactive controls have associated labels, which are provided by aria-label and aria-labelledby attributes.
Custom controls have ARIA roles
Ensure that all custom interactive controls have appropriate ARIA roles.
Visual order on the page follows DOM order
Ensure that the DOM order matches with the page's visual order, in order to improve navigation for screen readers and other assistive technologies.
Offscreen content is hidden from assistive technology
Ensure that offscreen content is hidden through the use of "display:none" styling or the aria-hidden attribute.
HTML5 landmark elements are used to improve navigation
Elements such as <main> and <nav> are recommended as they are used by screen readers and other assistive technologies to improve keyboard navigation.
69

Best Practices

Indicates the recommended, best practices currently in place on the page and highlights the best practices that grains.com should incorporate. This includes practices such as protecting pages with HTTPS.

Audits

Avoids requesting the geolocation permission on page load
When requesting a user's location, provide context or consider tying the request to a user action to avoid confusion and mistrust from users.
Avoids requesting the notification permission on page load
When requesting permission to send notifications, provide context or consider tying the request to a user action to avoid confusion and mistrust from users.
Ensure CSP is effective against XSS attacks
Significantly reduce the risk of cross-site scripting attacks (XSS) by ensuring you have a strong Content Security Policy (CSP).
Description Directive Severity
No CSP found in enforcement mode
High

Audits

Allows users to paste into password fields
Ensure that password inputs may be pasted into to aid in the user's ability to use password managers and improve security.
Displays images with correct aspect ratio
Ensure that image display dimensions match their natural aspect ratio.
Serves images with appropriate resolution
For maximum image clarity, ensure images have natural dimensions and are proportional to the display size and pixel ratio.
Fonts with `font-display: optional` are preloaded
It is recommended that optional fonts are preloaded.

Audits

Page has the HTML doctype
Ensure a doctype is specified to prevent the browser from switching to quirks-mode.
Properly defines charset
It is advised to declare a character encoding, optionally via a <meta> tag in the first 1024 bytes of the HTML or in the Content-Type HTTP response header.

Audits

Avoids `unload` event listeners
The 'unload' event does not fire reliably, causing issues with browser optimizations such as the Back-Forward Cache. It is recommended that 'pagehide' or 'visibilitychange' events are used instead.
Detected JavaScript libraries
Below is a list of all front-end JavaScript libraries that were detected on the page.
Name Version
Bootstrap
3.3.2
Highcharts
2.1.10
jQuery
2.1.4
Lo-Dash
3.10.1
Mustache
2.1.3
Knockout
3.3.0
AngularJS
1.2.32
Moment.js
2.10.6
Moment Timezone
0.3.1
No issues in the `Issues` panel in Chrome Devtools
There may be unresolved issues logged to Chrome Devtools.

Audits

Does not use HTTPS — 1 insecure request found
Ensure that all pages are protected with HTTPS (including those that do not handle sensitive data) as HTTPS prevents tampering and passive listening on communications between the app and its users. Additionally, HTTPS is a prerequisite for HTTP/2 and many new web platform APIs.
Insecure URL Request Resolution
http://grains.com/
Allowed
Includes front-end JavaScript libraries with known security vulnerabilities — 43 vulnerabilities detected
Ensure that the use of third-party scripts is minimal and that only trusted third-party scripts are used as some may contain known security vulnerabilities which may be exploited by attackers.
Library Version Vulnerability Count Highest Severity
5
Medium
4
High
4
Medium
9
High
1
Medium
1
Medium
16
High
3
Medium

Audits

Uses deprecated APIs — 1 warning found
Avoid deprecated APIs which will eventually be removed the browser.
Deprecation / Warning Source
Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user's experience. For more help, check https://xhr.spec.whatwg.org/.
Browser errors were logged to the console
Below is a list of all errors logged to the console, which indicate unresolved problems on the site.
Source Description
Failed to load resource: the server responded with a status of 404 (Not Found)
Missing source maps for large first-party JavaScript
Consider deploying source maps for added benefits such as the ability to debug while in production.
URL Map URL
https://grains.com/scripts/vendor.81a39143.js
https://grains.com/scripts/libs/barchart-marketdata-ui-1.0.20f760b0.js
https://grains.com/scripts/libs/barchart-marketdata-ui-1.0.js.map
82

SEO

Indicates how well the page is optimized for ranking in search engines and highlights Search Engine Optimization (SEO) opportunities for grains.com. This includes optimizations such as providing meta data.

Mobile Friendly

Has a `<meta name="viewport">` tag with `width` or `initial-scale`
It is advised to use a '<meta name="viewport">' tag for the optimization of grains.com on mobile screens.
Document uses legible font sizes
Font sizes of 12px or less are too small to most mobile users without user gestures and further action. Aim for more than 60% of page text to use font sizes greater than 12px.
Tap targets are sized appropriately
Interactive elements (such as buttons and links) should be appropriately spaced, sized and easy enough to select or tap with regard to their surrounding elements.

Content Best Practices

Document has a `<title>` element
Search engines, screen reader users and other assistive technology users rely on the title to provide an overview of the page and to help determine if the page is relevant to their search.
Document has a meta description
Meta descriptions may be used by search engines when displaying a link to the page and should concisely summarize the page's content.
Links have descriptive text
Make use of descriptive link text to assist search engines in understanding the content.
Document has a valid `hreflang`
Search engines can be instructed to list specific versions of a page for a given language or region through the use of hreflang links.
Document has a valid `rel=canonical`
Search engines can be suggested which URL should be shown in search results through the use of canonical links.
Document avoids plugins
The content of plugins cannot be indexed by search engines and many devices either restrict or do not support them.

Crawling and Indexing

Page has successful HTTP status code
Avoid pages with unsuccessful HTTP status codes as they may not be indexed by search engines.
Page isn’t blocked from indexing
Pages that cannot be crawled by search engines cannot be indexed or included in their search results. Ensure that search engines have permission to crawl all pages that should be indexed.
robots.txt is valid
Malformed robots.txt files prevent crawlers from understanding how a site wants to be crawled or indexed, which can be devastating to SEO.

Crawling and Indexing

Links are not crawlable
Ensure that the 'href' attribute of anchor elements links to the appropriate destination. This allows for more pages of the site to be discovered by search engines.

Content Best Practices

Image elements do not have `[alt]` attributes
Provide short and descriptive alternative text where possible on informative elements.
Failing Elements

Manual Checks

Structured data is valid
Structured data can be validated through the use of the Structured Data Testing Tool and the Structured Data Linter.
22

PWA

Indicates how valid the aspects of a Progressive Web App (PWA) are for the page and highlights opportunities to enable/improve the PWA of grains.com. This includes details about web app manifests.

PWA Optimized

Content is sized correctly for the viewport
Ensure that the width of the app's content matches the width of the viewport, otherwise the app might not be optimized for mobile screens.
Has a `<meta name="viewport">` tag with `width` or `initial-scale`
It is advised to use a '<meta name="viewport">' tag for the optimization of grains.com on mobile screens.

Installable

Web app manifest or service worker do not meet the installability requirements — 1 reason
User engagement may be increased by leveraging the browsers ability to proactively prompt users to add the app to their homescreen.
Failure reason
No manifest was fetched

PWA Optimized

Does not register a service worker that controls page and `start_url`
A service worker is used to provide Progressive Web Apps the use of features such as working offline, the ability for the app to be added to the homescreen as well as push notifications.
Is not configured for a custom splash screen
Themed splash screens ensure a high-quality user experience at launch for app users.
View Data
Does not set a theme color for the address bar.
A theme may be applied to the browser address bar, which ideally can be made to match the site.
View Data
Does not provide a valid `apple-touch-icon`
iOS users of Progressive Web Apps will benefit from an apple touch icon, which can be defined with 'apple-touch-icon', which must point to a non-transparent 192px (or 180px) square PNG.
Manifest doesn't have a maskable icon
Maskable icons are great to ensure that images fill the entire shape when installing the app on a device.

Manual Checks

Site works cross-browser
Ensure that the Progressive Web App works correctly across every major browser.
Page transitions don't feel like they block on the network
Users perceive apps with responsive, snappy transitions as higher peforming and ensures a great user experience, even on a slow network.
Each page has a URL
Ensure that all pages are deep linkable via URL. They should also be unique for the purpose of shareability on social media.
Avg. (All Categories) 56
Performance 30
Accessibility 64
Best Practices 69
SEO 85
PWA 30
0–49 (Fail) 50–89 (Average) 90–100 (Pass)
Simulate loading on mobile
30

Performance

Indicates how well the page is performing and highlights opportunities where performance may be improved for grains.com. This includes details about optimizing page load times which can result in a better user experience.

Metrics

Cumulative Layout Shift — 0.102
Cumulative Layout Shift is the measurement of visible elements collective movement within the viewport.
View Data

Other

Properly size images — Potential savings of 7 KiB
Images can slow down the page's load time. Grains.com should consider serving more appropriate-sized images.
URL Resource Size (Bytes) Potential Savings (Bytes)
https://grains.com/images/whitelabel/cmdty-primary-by-bc-tm.png
8429
7336
Defer offscreen images
Time to Interactive can be slowed down by resources on the page. Grains.com should consider lazy-loading offscreen and hidden images.
Minify CSS
Cascading Style Sheets (CSS) files can contribute to network payload sizes. Grains.com should consider minifying CSS files.
Efficiently encode images
Unoptimized images can consume more cellular data than what is necessary.
Serve images in next-gen formats — Potential savings of 23 KiB
Consider JPEG 2000, JPEG XR or WebP image formats which provide better compression than PNG and JPEG.
URL Resource Size (Bytes) Potential Savings (Bytes)
https://grains.com/images/field2.a43c6cc8.jpg
43958
23456
Preconnect to required origins
Resource hints, such as 'preconnect' or 'dns-prefetch', may assist in establishing early connections to important third-party origins.
Initial server response time was short — Root document took 50 ms
It is advised to keep the server response time short for the main document, because all other requests depend on it.
URL Time Spent (Ms)
https://grains.com/
52.638
Avoid multiple page redirects — Potential savings of 630 ms
Redirects can cause additional delays before the page can begin loading. Grains.com should avoid multiple or unnecessary page redirects.
URL Time Spent (Ms)
http://grains.com/
630
https://grains.com/
0
Preload key requests
Key requests can be preloaded by using '<link rel=preload>'. Grains.com should consider using '<link rel=preload>' to prioritize fetching resources that are currently requested later in page load.
Use video formats for animated content
Large GIFs are inefficient for delivering animated content. It is recommended to use MPEG4/WebM videos for animations and PNG/WebP for static images instead of GIF.
Remove duplicate modules in JavaScript bundles
Ensure that no duplicate JavaScript modules from bundles exist to reduce bytes consumed by network activity.
Avoid serving legacy JavaScript to modern browsers — Potential savings of 9 KiB
Polyfills and transforms enable legacy browsers to use new JavaScript features. For bundled JavaScript it is recommended to adopt a modern script deployment strategy using module/nomodule feature detection. This will reduce the amount of code shipped to modern browsers.
URL Potential Savings (Bytes)
https://grains.com/scripts/vendor.81a39143.js
8788
Preload Largest Contentful Paint image
It is recommended to preload images used by LCP elements, to improve LCP time.
Avoids enormous network payloads — Total size was 1,031 KiB
Large network payloads can cost users money and are linked to long load times.
URL Transfer Size (Bytes)
https://grains.com/scripts/vendor.81a39143.js
629167
https://grains.com/protos/webapi_1_51.proto
108851
https://grains.com/scripts/scripts.73640d4f.js
66911
https://grains.com/images/field2.a43c6cc8.jpg
44429
https://grains.com/scripts/libs/barchart-marketdata-ui-1.0.20f760b0.js
43771
https://grains.com/styles/vendor.css
42456
https://www.google-analytics.com/analytics.js
20631
https://grains.com/scripts/libs/zozo.tabs.min.ca035427.js
15993
https://grains.com/styles/main.css
13179
https://grains.com/locale/locale-en.json
10289
Avoids an excessive DOM size — 155 elements
A large DOM (Document Object Model) will increase memory usage, cause longer system calculations as well as costly layout reflows.
Statistic Element Value
Total DOM Elements
155
Maximum DOM Depth
*
16
Maximum Child Elements
14
Avoid chaining critical requests — 13 chains found
Below is a list of Critical Request Chains, which shows which resources are loaded with a high priority. Grains.com should consider reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load.
User Timing marks and measures
Make use of the User Timing API to measure an app's real-world performance during key user experiences.
All text remains visible during webfont loads
Make use of the font-display CSS feature, which will ensure text is user-visible while webfonts are loading.
Keep request counts low and transfer sizes small — 32 requests • 1,031 KiB
It is advised to add a budgets.json file in order to set budgets for the quantity and size of page resources.
Resource Type Requests Transfer Size (Bytes)
Total
32
1055521
Script
9
786598
Other
8
126338
Image
8
72022
Stylesheet
6
67722
Document
1
2841
Media
0
0
Font
0
0
Third-party
8
33937
Minimize third-party usage — Third-party code blocked the main thread for 40 ms
It is advised to either limit, remove or delay the loading of redundant third-party code which may be significantly impacting load performance.
Third-Party Transfer Size (Bytes) Main-Thread Blocking Time (Ms)
22435
41.804
7947
0
1346
0
681
0
Lazy load third-party resources with facades
Consider replacing third-party embeds with a facade until they are required (use lazy loading).
Largest Contentful Paint element — 1 element found
The element which was identified as the Largest Contentful Paint.
Element
Largest Contentful Paint image was not lazily loaded
Above-the-fold images that are lazily loaded render later in the page lifecycle, which can delay the largest contentful paint.
Avoid large layout shifts — 1 element found
Below is a list of all DOM elements that contribute to the CLS of the page.
Element CLS Contribution
0.1015625
Avoids `document.write()`
Avoid or limit the use of external scripts that are dynamically injected via 'document.write()' as users on slow connections will be delayed by tens of seconds.
Avoid long main-thread tasks — 6 long tasks found
Below is a list of the longest tasks on the main thread, which is useful when identifying the worst input delay contributors.
URL Start Time (Ms) Duration (Ms)
https://grains.com/scripts/vendor.81a39143.js
6510
900
https://grains.com/scripts/vendor.81a39143.js
8881
283
https://grains.com/scripts/vendor.81a39143.js
8660
221
https://www.google-analytics.com/analytics.js
3090
100
https://grains.com/
1115
78
https://grains.com/scripts/vendor.81a39143.js
8610
50
Avoid non-composited animations
It is recommended to avoid non-composited animations which are often janky and increase CLS.
Has a `<meta name="viewport">` tag with `width` or `initial-scale`
It is advised to use a '<meta name="viewport">' tag for the optimization of grains.com on mobile screens.

Budgets

Performance budget
It is advised to keep the quantity and size of all network requests under the targets set by the provided performance budget.
Timing budget
It is advised to set a timing budget to monitor the performance of your site.

Audits

Network Requests
Below is a list of network requests that were made during page load.
URL Protocol Start Time (Ms) End Time (Ms) Transfer Size (Bytes) Resource Size (Bytes) Status Code MIME Type Resource Type
http://grains.com/
http/1.1
0
35.35700001521
448
0
301
text/html
https://grains.com/
h2
35.788000008324
87.432000000263
2841
5195
200
text/html
Document
https://grains.com/styles/vendor.css
h2
104.01800001273
303.00300000818
42456
308509
200
text/css
Stylesheet
https://fonts.googleapis.com/css?family=Raleway:400,700,800&subsetting=all
h2
104.40700000618
122.04700001166
1346
4749
200
text/css
Stylesheet
https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css
h2
104.88100000657
131.79000001401
7947
31000
200
text/css
Stylesheet
https://grains.com/scripts/libs/please-wait.css
h2
105.09400002775
167.3530000262
1177
4118
200
text/css
Stylesheet
https://grains.com/styles/main.css
h2
112.46000000392
154.15700001176
13179
68585
200
text/css
Stylesheet
https://grains.com/scripts/libs/please-wait.f30aeff6.js
h2
113.13599999994
162.09399999934
2478
8484
200
application/javascript
Script
https://grains.com/scripts/libs/utils.d41d8cd9.js
h2
113.25400002534
147.22700000857
422
0
200
application/javascript
Script
https://grains.com/scripts/vendor.81a39143.js
h2
113.43000002671
224.47000001557
629167
2107338
200
application/javascript
Script
https://grains.com/scripts/libs/chart-from-quote-plus.04f2f291.js
h2
113.57700001099
133.702000021
4901
18703
200
application/javascript
Script
https://grains.com/scripts/libs/zozo.tabs.min.ca035427.js
h2
113.71800000779
138.06300002034
15993
80775
200
application/javascript
Script
https://grains.com/scripts/libs/massautocomplete.min.398db711.js
h2
113.83400001796
134.06900002155
2324
5068
200
application/javascript
Script
https://grains.com/scripts/libs/barchart-marketdata-ui-1.0.20f760b0.js
h2
113.95700002322
139.50400002068
43771
236006
200
application/javascript
Script
https://grains.com/scripts/scripts.73640d4f.js
h2
114.15800001123
211.71400000458
66911
247295
200
application/javascript
Script
https://grains.com/images/whitelabel/logo_login.png
h2
319.70800002455
336.7750000034
7942
7475
200
image/png
Image
https://www.google-analytics.com/analytics.js
h2
321.01300000795
326.19400002295
20631
50205
200
text/javascript
Script
https://webapp-proxy.aws.barchart.com/v1/platform-services/apps/all/getTranslatedSymbols.php?symbols=ZC%235%2CZS%235%2CZM%233%2CZL%233%2CZW%234%2CKE%233%2CMW%233%2CZO%233%2CCT%233%2CSB%233%2CCC%233%2CKC%233%2COJ%233%2CLE%235%2CGF%233%2CHE%233%2CCL%233%2CHO%233%2CRB%232%2CNG%233%2CZK%232%2CGC%233%2CSI%233%2CHG%232%2CPA*0%2CPL*0%2CZB%232%2CZN%232%2CZF%231%2CZQ%231%2CGE%232%2CE6*0%2CJ6*0%2CA6*0%2CB6*0%2CD6*0%2CS6*0%2CDX*0%2CYM%231%2CES%231%2CNQ%231%2CEW%231%2CRJ%231%2CZC%239%2CZS%2311%2CZW%236%2CKE%236%2CZL%236%2CMW%236%2CZO%234%2CZM%238%2CLE%239%2CGF%239%2CHE%239%2CDL%239%2CCT%234%2COJ%234%2CKC%234%2CCC%234%2CSB%234%2CLS%234%2CCL%233%2CHO%233%2CZK%233%2CRB%233%2CNG%233%2CYM%232%2CNQ%232%2CES%232%2CZQ%232%2CD6%232%2CDX%232%2CE6%232%2CGE%232%2CJ6%232%2CGC%232%2CSI%232%2CZB%232%2CZN%232%2CZF%232%2CZT%232&noLookupKey=true&noCache=false&_=1645198180073
h2
647.83500001067
792.9910000239
1528
2376
200
application/json
XHR
https://grains.com/protos/webapi_1_51.proto
h2
653.11100002145
723.87600000366
108851
108427
200
binary/octet-stream
XHR
https://grains.com/locale/locale-en.json
h2
797.11100002169
819.84999999986
10289
26202
200
application/json
XHR
https://grains.com/styles/whitelabel/grains.css
h2
798.64400002407
819.39899999998
1617
4618
200
text/css
Stylesheet
https://grains.com/views/navs/nav_us.html
h2
808.68400001782
833.96400001948
2665
9451
200
text/html
XHR
https://grains.com/views/landing.html
h2
808.92900002073
826.36400000774
1265
1914
200
text/html
XHR
https://www.google-analytics.com/j/collect?v=1&_v=j96&a=1929756459&t=pageview&_s=1&dl=https%3A%2F%2Fgrains.com%2F&dp=%2F&ul=en-us&de=UTF-8&dt=Local%20Cash%20Grain%20Bids%20and%20Real-time%20Commodity%20Prices%20%7C%20Grains.com&sd=24-bit&sr=360x640&vp=360x640&je=0&_u=KEBAAAABAAAAAC~&jid=154657722&gjid=763056558&cid=1163290001.1645198180&tid=UA-2009749-50&_gid=598177067.1645198180&_r=1&_slc=1&z=749544415
h2
881.80300002568
886.63800002541
611
4
200
text/plain
XHR
https://grains.com/images/field2.a43c6cc8.jpg
h2
900.06500002346
929.12600000273
44429
43958
200
image/jpeg
Image
https://grains.com/images/badge-desktop.693d3537.svg
h2
921.39800000587
943.93200002378
2974
7481
200
image/svg+xml
Image
https://grains.com/images/badge-apple.1c6e70eb.svg
h2
921.78300002706
944.46800000151
4125
8582
200
image/svg+xml
Image
https://grains.com/images/badge-google-play.ce788ac2.svg
h2
922.13500000071
944.95400000596
2462
5217
200
image/svg+xml
Image
https://www.google-analytics.com/collect?v=1&_v=j96&a=1929756459&t=pageview&_s=2&dl=https%3A%2F%2Fgrains.com%2F&dp=%2Fus&ul=en-us&de=UTF-8&dt=Local%20Cash%20Grain%20Bids%20and%20Real-time%20Commodity%20Prices%20%7C%20Grains.com&sd=24-bit&sr=360x640&vp=360x640&je=0&_u=KEBAAAABAAAAAC~&jid=&gjid=&cid=1163290001.1645198180&tid=UA-2009749-50&_gid=598177067.1645198180&z=2011061614
h2
922.7350000001
928.55800001416
596
35
200
image/gif
Image
https://www.google-analytics.com/collect?v=1&_v=j96&a=1929756459&t=pageview&_s=3&dl=https%3A%2F%2Fgrains.com%2F&dp=%2Fus&ul=en-us&de=UTF-8&dt=Local%20Cash%20Grain%20Bids%20and%20Real-time%20Commodity%20Prices%20%7C%20Grains.com&sd=24-bit&sr=360x640&vp=360x640&je=0&_u=KEBAAAABAAAAAC~&jid=&gjid=&cid=1163290001.1645198180&tid=UA-2009749-50&_gid=598177067.1645198180&z=905810785
h2
923.06700002518
929.5170000114
597
35
200
image/gif
Image
https://grains.com/images/whitelabel/cmdty-primary-by-bc-tm.png
h2
994.36599999899
1012.5590000243
8897
8429
200
image/png
Image
https://stats.g.doubleclick.net/j/collect?t=dc&aip=1&_r=3&v=1&_v=j96&tid=UA-2009749-50&cid=1163290001.1645198180&jid=154657722&gjid=763056558&_gid=598177067.1645198180&_u=KEBAAAAAAAAAAC~&z=149579353
h2
1008.1750000245
1014.1490000242
681
1
200
text/plain
XHR
Network Round Trip Times — 0 ms
High Network RTT (Round Trip Times) can have a large impact on performance. Providing servers geographically closer to the user could improve performance.
Server Backend Latencies — 0 ms
High server latencies indicate the server is overloaded or has a poor backend performance.
Tasks
Below is a list of the top-level main thread tasks that executed during page load.
Start Time (Ms) End Time (Ms)
138.936
9.518
149.181
5.35
274.284
6.133
351.891
11.147
363.098
5.046
368.157
38.75
409.202
449.781
866.985
24.958
892.599
8.885
902.507
12.542
915.097
55.143
970.348
70.763
1041.214
9.828
1074.445
10.824
Diagnostics
Below is a collection of useful page vitals.
View Data
Metrics
Below is a collection of metrics.
View Data
Script Treemap Data
Provide as required, for treemap app.

Other

Minify JavaScript — Potential savings of 20 KiB
JavaScript (JS) files can contribute to network payload sizes and increase script parse times. Grains.com should consider minifying JS files.
URL Transfer Size (Bytes) Potential Savings (Bytes)
https://grains.com/scripts/libs/barchart-marketdata-ui-1.0.20f760b0.js
43771
15094
https://grains.com/scripts/libs/zozo.tabs.min.ca035427.js
15993
2599
https://grains.com/scripts/libs/chart-from-quote-plus.04f2f291.js
4901
2320
Reduce unused CSS — Potential savings of 53 KiB
Dead and/or unused rules in Style Sheets (CSS) can contribute to network payload sizes. Grains.com should consider removing dead rules from style sheets and deferring the loading of CSS not used for above-the-fold content.
URL Transfer Size (Bytes) Potential Savings (Bytes)
https://grains.com/styles/vendor.css
42456
41797
https://grains.com/styles/main.css
13179
12829
Enable text compression — Potential savings of 66 KiB
Text-based resources should be served with compression, such as gzip, deflate or brotli.
URL Transfer Size (Bytes) Potential Savings (Bytes)
https://grains.com/protos/webapi_1_51.proto
108427
67721
Reduce JavaScript execution time — 2.2 s
JavaScript (JS) execution time can be lowered by reducing the time required for parsing, compiling and executing JS. Delivering smaller JS payloads may help with this.
URL Total CPU Time (Ms) Script Evaluation (Ms) Script Parse (Ms)
https://grains.com/scripts/vendor.81a39143.js
2461.872
1958.684
144.936
https://grains.com/
394.892
23.052
7.592
Unattributable
218.268
11.8
0.7
https://www.google-analytics.com/analytics.js
111.592
94.416
4.448
Minimize main-thread work — 3.4 s
Main-thread work timing can be lowered by reducing the time required for parsing, compiling and executing JS. Delivering smaller JS payloads may help with this.
Category Time Spent (Ms)
Script Evaluation
2127.552
Other
459.836
Style & Layout
255.548
Script Parsing & Compilation
204.82
Parse HTML & CSS
123.828
Garbage Collection
112.5
Rendering
83.552

Metrics

First Contentful Paint — 6.8 s
The time taken for the first image or text on the page to be rendered.
Time to Interactive — 9.1 s
The time taken for the page to become fully interactive.
Speed Index — 7.1 s
The time taken for the page contents to be visibly populated.
Total Blocking Time — 930 ms
The total blocking time is the sum of all time periods between First Contentful Paint and Time to Interactive (when task length exceeded 50ms).
Largest Contentful Paint — 9.6 s
The timing of the largest text or image that is painted.

Audits

Max Potential First Input Delay — 900 ms
Users could experience a delay when interacting with the page.
First Meaningful Paint — 7.1 s
The time taken for the primary content of the page to be rendered.

Other

Eliminate render-blocking resources — Potential savings of 900 ms
Resources, such as JavaScript and style sheets, can block the first paint of the page. Grains.com should consider delivering critical JavaScript/style sheets (JS/CSS) inline and deferring all non-critical JS/CSS.
URL Transfer Size (Bytes) Potential Savings (Ms)
https://grains.com/styles/vendor.css
42456
750
https://fonts.googleapis.com/css?family=Raleway:400,700,800&subsetting=all
1346
780
https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css
7947
930
https://grains.com/styles/main.css
13179
300
Reduce unused JavaScript — Potential savings of 521 KiB
It is advised to remove unused JavaScript in order to reduce bytes consumed by network activity.
URL Transfer Size (Bytes) Potential Savings (Bytes)
https://grains.com/scripts/vendor.81a39143.js
629167
439756
https://grains.com/scripts/scripts.73640d4f.js
66911
58324
https://grains.com/scripts/libs/barchart-marketdata-ui-1.0.20f760b0.js
43771
35134
Serve static assets with an efficient cache policy — 19 resources found
Grains.com can speed up repeat visits by increasing the cache lifetime, which is essentially how long before a cached copy expires.
URL Cache TTL (Ms) Transfer Size (Bytes)
https://grains.com/scripts/libs/barchart-marketdata-ui-1.0.20f760b0.js
0
43771
https://grains.com/scripts/libs/zozo.tabs.min.ca035427.js
0
15993
https://grains.com/scripts/libs/chart-from-quote-plus.04f2f291.js
0
4901
https://grains.com/scripts/libs/please-wait.f30aeff6.js
0
2478
https://grains.com/scripts/libs/massautocomplete.min.398db711.js
0
2324
https://grains.com/styles/whitelabel/grains.css
0
1617
https://grains.com/scripts/libs/please-wait.css
0
1177
https://grains.com/scripts/libs/utils.d41d8cd9.js
0
422
https://grains.com/scripts/vendor.81a39143.js
3600000
629167
https://grains.com/scripts/scripts.73640d4f.js
3600000
66911
https://grains.com/images/field2.a43c6cc8.jpg
3600000
44429
https://grains.com/styles/vendor.css
3600000
42456
https://grains.com/styles/main.css
3600000
13179
https://grains.com/images/whitelabel/cmdty-primary-by-bc-tm.png
3600000
8897
https://grains.com/images/whitelabel/logo_login.png
3600000
7942
https://grains.com/images/badge-apple.1c6e70eb.svg
3600000
4125
https://grains.com/images/badge-desktop.693d3537.svg
3600000
2974
https://grains.com/images/badge-google-play.ce788ac2.svg
3600000
2462
https://www.google-analytics.com/analytics.js
7200000
20631
Does not use passive listeners to improve scrolling performance
Improve the page's scroll performance by marking touch and wheel event listeners as 'passive'.
Source
Image elements do not have explicit `width` and `height`
Reduce layout shifts and improve CLS by setting explicit width and height properties on image elements.
URL
https://grains.com/images/badge-apple.1c6e70eb.svg
https://grains.com/images/whitelabel/cmdty-primary-by-bc-tm.png
https://grains.com/images/badge-desktop.693d3537.svg
https://grains.com/images/badge-google-play.ce788ac2.svg
First Contentful Paint (3G) — 14160 ms
The time taken for the first image or text on the page to be rendered while on a 3G network.
64

Accessibility

Indicates how accessible the page is and highlights opportunities where the page can be made more accessible to users of grains.com. This includes details about various page attributes that can be optimized.

Navigation

`[accesskey]` values are unique
Access keys assist users with focusing on different parts of the page. Each access key should be unique for proper navigation.
The page contains a heading, skip link, or landmark region
It is advised to provide ways to bypass repetitive content, allowing users to navigate the page efficiently.
`[id]` attributes on active, focusable elements are unique
Ensure all focusable elements have a unique id value to allow them to be visible to users of assistive technologies, like a screen reader.
Heading elements appear in a sequentially-descending order
Properly order all headers and do not skip heading levels to better the navigation and readability for users of assistive technologies, like a screen reader.
No element has a `[tabindex]` value greater than 0
Although technically valid, a tabindex value greater than 0 often creates frustrating experiences for users who rely on assistive technologies.

ARIA

`[aria-*]` attributes match their roles
Avoid mismatching 'aria-*' attributes and their 'role' value, as it invalidates the attribute.
`button`, `link`, and `menuitem` elements have accessible names
Without accessible names on elements, screen readers will default to announcing a generic name, which means your content will be less accessible to users who rely on screen readers.
`[aria-hidden="true"]` is not present on the document `<body>`
If aria-hidden=true is set on the document body, assistive technologies, like a screen reader will work inconsistently.
`[aria-hidden="true"]` elements do not contain focusable descendents
Interactive elements within an aria-hidden=true element are unavailable to users of assistive technologies, like a screen reader.
ARIA input fields have accessible names
Generic names are announced to users of assistive technologies, like a screen reader, when an input field does not have an accessible name specified.
ARIA `meter` elements have accessible names
Without accessible names on elements, screen readers will default to announcing a generic name, which means your content will be less accessible to users who rely on screen readers.
ARIA `progressbar` elements have accessible names
Without accessible names on elements, screen readers will default to announcing a generic name, which means your content will be less accessible to users who rely on screen readers.
`[role]`s have all required `[aria-*]` attributes
Some ARIA roles have required 'aria-*' attributes, which provide essential information about state and functionality.
Elements with an ARIA `[role]` that require children to contain a specific `[role]` have all required children.
Some ARIA parent roles cannot perform their intended functions if specific child roles are not used.
`[role]`s are contained by their required parent element
Some ARIA child roles cannot perform their intended functions if specific parent roles are not used.
`[role]` values are valid
All ARIA roles require valid values to perform their intended functions.
ARIA toggle fields have accessible names
Generic names are announced to users of assistive technologies, like a screen reader, when a toggle field does not have an accessible name specified.
ARIA `tooltip` elements have accessible names
Without accessible names on elements, screen readers will default to announcing a generic name, which means your content will be less accessible to users who rely on screen readers.
ARIA `treeitem` elements have accessible names
Without accessible names on elements, screen readers will default to announcing a generic name, which means your content will be less accessible to users who rely on screen readers.
`[aria-*]` attributes have valid values
ARIA attributes cannot be interpreted with invalid values when used by screen readers and other assistive technologies.
`[aria-*]` attributes are valid and not misspelled
ARIA attributes cannot be interpreted with invalid names when used by screen readers and other assistive technologies.
ARIA IDs are unique
Ensure all ARIA ID values are unique to prevent elements from being overlooked by assistive technologies, like a screen reader.

Names and labels

Buttons have an accessible name
Buttons become unusable as they are announced simply as "button" when the button does not have an accessible name, when used by screen readers and other assistive technologies.
Document has a `<title>` element
Search engines, screen reader users and other assistive technology users rely on the title to provide an overview of the page and to help determine if the page is relevant to their search.
No form fields have multiple labels
Having multiple labels for form fields can be confusing to assistive technologies, like a screen reader.
`<frame>` or `<iframe>` elements have a title
Screen reader users and other assistive technology users rely on frame titles to describe the contents of frames.
`<input type="image">` elements have `[alt]` text
Input buttons with alternative text assist screen readers and other assistive technology users to understand its purpose.
Form elements have associated labels
Screen readers and other assistive technologies rely on labels to properly announce form controls.
`<object>` elements have `[alt]` text
It is advised that alt text is used on '<object>' elements in order to provide meaning to screen reader and other assistive technology users, as these technologies are unable to translate non-text content.

Tables and lists

`<dl>`'s contain only properly-ordered `<dt>` and `<dd>` groups, `<script>`, `<template>` or `<div>` elements.
Screen readers and other assistive technologies may produce poor and inaccurate output when definition lists are not properly marked up.
Definition list items are wrapped in `<dl>` elements
In order for screen readers and other assistive technologies to properly announce definition list items ('<dt>' and '<dd>'), they must be wrapped in parent a '<dl>' element.
Lists contain only `<li>` elements and script supporting elements (`<script>` and `<template>`).
Use proper list structure to aid screen readers and other assistive technologies.
List items (`<li>`) are contained within `<ul>` or `<ol>` parent elements
In order for screen readers to announce list items, ensure that list items ('<li>') are contained within parent '<ul>' or '<ol>' tags.
Cells in a `<table>` element that use the `[headers]` attribute refer to table cells within the same table.
Screen readers and other assistive technologies have features to make navigating tables easier. Ensure that '<td>' cells using the headers attribute only refer to other cells in the same table, to improve screen reader user experience.
`<th>` elements and elements with `[role="columnheader"/"rowheader"]` have data cells they describe.
Screen readers and other assistive technologies have features to make navigating tables easier. Ensure that table headers refer to some set of cells, to improve screen reader user experience.

Internationalization and localization

`<html>` element has a valid value for its `[lang]` attribute
Specify a valid BCP 47 language in order to help screen readers and other assistive technologies announce text properly.
`[lang]` attributes have a valid value
Specify a valid BCP 47 language on elements in order to help screen readers and other assistive technologies announce text properly.

Best practices

The document does not use `<meta http-equiv="refresh">`
Pages that refresh automatically cause a poor user experience as focus is directed back to the top of the page unexpectedly.

Audio and video

`<video>` elements contain a `<track>` element with `[kind="captions"]`
Grains.com may provide assistance to deaf or hearing-impaired users with captions on videos.

Contrast

Background and foreground colors do not have a sufficient contrast ratio.
Many (if not most) users find low-contrast text difficult or impossible to read.
Failing Elements

Internationalization and localization

`<html>` element does not have a `[lang]` attribute
It is advised to provide a lang attribute so that screen readers and other assistive technologies are guaranteed to announce the page's text correctly. When not provided, the user's default language setting will be used which may cause inaccuracies.
Failing Elements

Names and labels

Image elements do not have `[alt]` attributes
Provide short and descriptive alternative text where possible on informative elements.
Failing Elements
Links do not have a discernible name
In order to improve the navigation for screen reader and other assistive technology users, use link text that is unique, focusable and discernible.

Best practices

`[user-scalable="no"]` is used in the `<meta name="viewport">` element or the `[maximum-scale]` attribute is less than 5.
For users with low vision who rely on screen magnification, ensure that zooming is not disabled.
Failing Elements

Manual Checks

The page has a logical tab order
The visual layout should be logical in its tab order and users cannot focus elements that are offscreen.
Interactive controls are keyboard focusable
Ensure that custom interactive controls are keyboard focusable and that a focus indicator is displayed.
Interactive elements indicate their purpose and state
Ensure that interactive elements (such as links and buttons) are distinguishable from non-interactive elements and that they indicate their state.
The user's focus is directed to new content added to the page
When new content (such as a dialogue) is added to the page, the user's focus should be directed to it.
User focus is not accidentally trapped in a region
Avoid focus being accidentally trapped when a user tabs in and out of controls or regions on page.
Custom controls have associated labels
Ensure that custom interactive controls have associated labels, which are provided by aria-label and aria-labelledby attributes.
Custom controls have ARIA roles
Ensure that all custom interactive controls have appropriate ARIA roles.
Visual order on the page follows DOM order
Ensure that the DOM order matches with the page's visual order, in order to improve navigation for screen readers and other assistive technologies.
Offscreen content is hidden from assistive technology
Ensure that offscreen content is hidden through the use of "display:none" styling or the aria-hidden attribute.
HTML5 landmark elements are used to improve navigation
Elements such as <main> and <nav> are recommended as they are used by screen readers and other assistive technologies to improve keyboard navigation.
69

Best Practices

Indicates the recommended, best practices currently in place on the page and highlights the best practices that grains.com should incorporate. This includes practices such as protecting pages with HTTPS.

Audits

Avoids requesting the geolocation permission on page load
When requesting a user's location, provide context or consider tying the request to a user action to avoid confusion and mistrust from users.
Avoids requesting the notification permission on page load
When requesting permission to send notifications, provide context or consider tying the request to a user action to avoid confusion and mistrust from users.
Ensure CSP is effective against XSS attacks
Significantly reduce the risk of cross-site scripting attacks (XSS) by ensuring you have a strong Content Security Policy (CSP).
Description Directive Severity
No CSP found in enforcement mode
High

Audits

Allows users to paste into password fields
Ensure that password inputs may be pasted into to aid in the user's ability to use password managers and improve security.
Displays images with correct aspect ratio
Ensure that image display dimensions match their natural aspect ratio.
Serves images with appropriate resolution
For maximum image clarity, ensure images have natural dimensions and are proportional to the display size and pixel ratio.
Fonts with `font-display: optional` are preloaded
It is recommended that optional fonts are preloaded.

Audits

Page has the HTML doctype
Ensure a doctype is specified to prevent the browser from switching to quirks-mode.
Properly defines charset
It is advised to declare a character encoding, optionally via a <meta> tag in the first 1024 bytes of the HTML or in the Content-Type HTTP response header.

Audits

Avoids `unload` event listeners
The 'unload' event does not fire reliably, causing issues with browser optimizations such as the Back-Forward Cache. It is recommended that 'pagehide' or 'visibilitychange' events are used instead.
Detected JavaScript libraries
Below is a list of all front-end JavaScript libraries that were detected on the page.
Name Version
Bootstrap
3.3.2
Highcharts
2.1.10
jQuery
2.1.4
Lo-Dash
3.10.1
Mustache
2.1.3
Knockout
3.3.0
AngularJS
1.2.32
Moment.js
2.10.6
Moment Timezone
0.3.1
No issues in the `Issues` panel in Chrome Devtools
There may be unresolved issues logged to Chrome Devtools.

Audits

Does not use HTTPS — 1 insecure request found
Ensure that all pages are protected with HTTPS (including those that do not handle sensitive data) as HTTPS prevents tampering and passive listening on communications between the app and its users. Additionally, HTTPS is a prerequisite for HTTP/2 and many new web platform APIs.
Insecure URL Request Resolution
http://grains.com/
Allowed
Includes front-end JavaScript libraries with known security vulnerabilities — 43 vulnerabilities detected
Ensure that the use of third-party scripts is minimal and that only trusted third-party scripts are used as some may contain known security vulnerabilities which may be exploited by attackers.
Library Version Vulnerability Count Highest Severity
5
Medium
4
High
4
Medium
9
High
1
Medium
1
Medium
16
High
3
Medium

Audits

Uses deprecated APIs — 1 warning found
Avoid deprecated APIs which will eventually be removed the browser.
Deprecation / Warning Source
Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user's experience. For more help, check https://xhr.spec.whatwg.org/.
Browser errors were logged to the console
Below is a list of all errors logged to the console, which indicate unresolved problems on the site.
Source Description
Failed to load resource: the server responded with a status of 404 (Not Found)
Missing source maps for large first-party JavaScript
Consider deploying source maps for added benefits such as the ability to debug while in production.
URL Map URL
https://grains.com/scripts/vendor.81a39143.js
https://grains.com/scripts/libs/barchart-marketdata-ui-1.0.20f760b0.js
https://grains.com/scripts/libs/barchart-marketdata-ui-1.0.js.map
85

SEO

Indicates how well the page is optimized for ranking in search engines and highlights Search Engine Optimization (SEO) opportunities for grains.com. This includes optimizations such as providing meta data.

Mobile Friendly

Has a `<meta name="viewport">` tag with `width` or `initial-scale`
It is advised to use a '<meta name="viewport">' tag for the optimization of grains.com on mobile screens.
Document uses legible font sizes — 100% legible text
Font sizes of 12px or less are too small to most mobile users without user gestures and further action. Aim for more than 60% of page text to use font sizes greater than 12px.
Source Selector % of Page Text Font Size
100.00%
≥ 12px
Tap targets are sized appropriately — 100% appropriately sized tap targets
Interactive elements (such as buttons and links) should be appropriately spaced, sized and easy enough to select or tap with regard to their surrounding elements.

Content Best Practices

Document has a `<title>` element
Search engines, screen reader users and other assistive technology users rely on the title to provide an overview of the page and to help determine if the page is relevant to their search.
Document has a meta description
Meta descriptions may be used by search engines when displaying a link to the page and should concisely summarize the page's content.
Links have descriptive text
Make use of descriptive link text to assist search engines in understanding the content.
Document has a valid `hreflang`
Search engines can be instructed to list specific versions of a page for a given language or region through the use of hreflang links.
Document has a valid `rel=canonical`
Search engines can be suggested which URL should be shown in search results through the use of canonical links.
Document avoids plugins
The content of plugins cannot be indexed by search engines and many devices either restrict or do not support them.

Crawling and Indexing

Page has successful HTTP status code
Avoid pages with unsuccessful HTTP status codes as they may not be indexed by search engines.
Page isn’t blocked from indexing
Pages that cannot be crawled by search engines cannot be indexed or included in their search results. Ensure that search engines have permission to crawl all pages that should be indexed.
robots.txt is valid
Malformed robots.txt files prevent crawlers from understanding how a site wants to be crawled or indexed, which can be devastating to SEO.

Crawling and Indexing

Links are not crawlable
Ensure that the 'href' attribute of anchor elements links to the appropriate destination. This allows for more pages of the site to be discovered by search engines.

Content Best Practices

Image elements do not have `[alt]` attributes
Provide short and descriptive alternative text where possible on informative elements.
Failing Elements

Manual Checks

Structured data is valid
Structured data can be validated through the use of the Structured Data Testing Tool and the Structured Data Linter.
30

PWA

Indicates how valid the aspects of a Progressive Web App (PWA) are for the page and highlights opportunities to enable/improve the PWA of grains.com. This includes details about web app manifests.

PWA Optimized

Content is sized correctly for the viewport
Ensure that the width of the app's content matches the width of the viewport, otherwise the app might not be optimized for mobile screens.
Has a `<meta name="viewport">` tag with `width` or `initial-scale`
It is advised to use a '<meta name="viewport">' tag for the optimization of grains.com on mobile screens.

Installable

Web app manifest or service worker do not meet the installability requirements — 1 reason
User engagement may be increased by leveraging the browsers ability to proactively prompt users to add the app to their homescreen.
Failure reason
No manifest was fetched

PWA Optimized

Does not register a service worker that controls page and `start_url`
A service worker is used to provide Progressive Web Apps the use of features such as working offline, the ability for the app to be added to the homescreen as well as push notifications.
Is not configured for a custom splash screen
Themed splash screens ensure a high-quality user experience at launch for app users.
View Data
Does not set a theme color for the address bar.
A theme may be applied to the browser address bar, which ideally can be made to match the site.
View Data
Does not provide a valid `apple-touch-icon`
iOS users of Progressive Web Apps will benefit from an apple touch icon, which can be defined with 'apple-touch-icon', which must point to a non-transparent 192px (or 180px) square PNG.
Manifest doesn't have a maskable icon
Maskable icons are great to ensure that images fill the entire shape when installing the app on a device.

Manual Checks

Site works cross-browser
Ensure that the Progressive Web App works correctly across every major browser.
Page transitions don't feel like they block on the network
Users perceive apps with responsive, snappy transitions as higher peforming and ensures a great user experience, even on a slow network.
Each page has a URL
Ensure that all pages are deep linkable via URL. They should also be unique for the purpose of shareability on social media.
Hosting

Server Location

Server IP Address: 13.226.31.101
Continent: North America
Country: United States
United States Flag
Region:
City:
Longitude: -97.822
Latitude: 37.751
Currencies: USD
USN
USS
Languages: English

Web Hosting Provider

Name IP Address
Amazon.com, Inc.
Registration

Domain Registrant

Private Registration: No
Name:
Organization:
Country:
City:
State:
Post Code:
Email:
Phone:
Note: Registration information is derived from various sources and may be inaccurate.

Domain Registrar

Name IP Address
GoDaddy.com, LLC 184.25.36.36
Security

Visitor Safety

Mature Content: Not Likely
McAfee WebAdvisor Rating: Safe
WOT Rating:
WOT Trustworthiness:
WOT Child Safety:
Note: Safety information is not guaranteed.

SSL/TLS Certificate

Issued To: cmdtydata.com
Issued By: Amazon
Valid From: 11th October, 2021
Valid To: 8th November, 2022
Subject: CN = cmdtydata.com
Hash: 9c6a5f89
Issuer: CN = Amazon
OU = Server CA 1B
O = Amazon
S = US
Version: 2
Serial Number: 14871291372074831683121533933634155769
Serial Number (Hex): 0B301B45FA2F6A27E58DC573A99774F9
Valid From: 11th October, 2024
Valid To: 8th November, 2024
Signature Algorithm (Short Name): RSA-SHA256
Signature Algorithm (Long Name): sha256WithRSAEncryption
Authority Key Identifier: keyid:59:A4:66:06:52:A0:7B:95:92:3C:A3:94:07:27:96:74:5B:F9:3D:D0
Extended Key Usage: TLS Web Server Authentication, TLS Web Client Authentication
CRL Distribution Points:
Full Name:
URI:http://crl.sca1b.amazontrust.com/sca1b-1.crl

Certificate Policies: Policy: 2.23.140.1.2.1

Authority Information Access: OCSP - URI:http://ocsp.sca1b.amazontrust.com
CA Issuers - URI:http://crt.sca1b.amazontrust.com/sca1b.crt

SCT List: Signed Certificate Timestamp:
Version : v1 (0x0)
Log ID : 29:79:BE:F0:9E:39:39:21:F0:56:73:9F:63:A5:77:E5:
BE:57:7D:9C:60:0A:F8:F9:4D:5D:26:5C:25:5D:C7:84
Timestamp : Oct 11 06:04:28.741 2021 GMT
Extensions: none
Signature : ecdsa-with-SHA256
30:45:02:20:24:5F:F1:23:97:EA:C5:BF:26:A7:29:B1:
83:2D:6A:16:DF:E0:C1:27:E2:9A:52:FE:14:AB:EA:3E:
CB:7D:A3:F7:02:21:00:A3:B4:55:43:40:ED:A1:B1:6C:
10:3B:C1:8C:D9:66:4E:55:1F:AA:37:A8:12:CA:E1:B0:
41:A3:0A:56:94:E5:28
Signed Certificate Timestamp:
Version : v1 (0x0)
Log ID : 51:A3:B0:F5:FD:01:79:9C:56:6D:B8:37:78:8F:0C:A4:
7A:CC:1B:27:CB:F7:9E:88:42:9A:0D:FE:D4:8B:05:E5
Timestamp : Oct 11 06:04:28.763 2021 GMT
Extensions: none
Signature : ecdsa-with-SHA256
30:46:02:21:00:B8:F0:65:74:83:A3:8A:A8:71:A8:87:
AB:2C:2A:52:26:E5:FD:CF:8A:2C:BF:AB:5D:CA:C6:FF:
52:47:01:73:C0:02:21:00:CD:E9:AA:56:DC:2B:F5:21:
DC:92:3A:6A:FE:3B:9E:6B:21:D2:39:B2:87:E4:4B:30:
B9:F8:ED:24:1E:58:37:F8
Signed Certificate Timestamp:
Version : v1 (0x0)
Log ID : 41:C8:CA:B1:DF:22:46:4A:10:C6:A1:3A:09:42:87:5E:
4E:31:8B:1B:03:EB:EB:4B:C7:68:F0:90:62:96:06:F6
Timestamp : Oct 11 06:04:28.718 2021 GMT
Extensions: none
Signature : ecdsa-with-SHA256
30:45:02:21:00:DD:94:DA:21:0D:69:C2:08:62:FD:70:
07:A6:AD:0F:2B:70:91:4B:97:47:1A:B5:D6:0C:7B:B4:
0B:06:63:EE:E0:02:20:70:77:CA:63:4C:98:79:8E:3E:
9B:4F:85:4B:99:33:C7:BA:19:9F:41:4D:13:33:A5:04:
86:BD:4A:A1:49:54:FE
Key Usage: Digital Signature, Key Encipherment
Basic Constraints: CA:FALSE
Subject Alternative Name: DNS:*.aws.barchart.com
DNS:*.barchart.com
DNS:*.cmdtyconnect.com
DNS:*.cmdtyexchange.com
DNS:*.cmdtyindexes.com
DNS:*.cmdtymarketplace.com
DNS:*.cmdtynewswire.com
DNS:*.cmdtynewswires.com
DNS:*.cmdtypricing.com
DNS:*.cmdtyproducer.com
DNS:*.cmdtyproducerindex.com
DNS:*.cmdtyquotes.com
DNS:*.cmdtytrends.com
DNS:*.cmdtyview.com
DNS:*.commoditydata.com
DNS:*.commodityindexes.com
DNS:*.commoditynewswire.com
DNS:*.commoditynewswires.com
DNS:*.commodityproducer.com
DNS:*.commodityproducerindex.com
DNS:*.commodityquotes.com
DNS:*.commoditytrends.com
DNS:*.commodityview.com
DNS:*.dev.grains.com
DNS:*.grains.com
DNS:*.scrapyardreport.com
DNS:cmdtyconnect.com
DNS:cmdtyexchange.com
DNS:cmdtyindexes.com
DNS:cmdtymarketplace.com
DNS:cmdtynewswire.com
DNS:cmdtynewswires.com
DNS:cmdtypricing.com
DNS:cmdtyproducer.com
DNS:cmdtyproducerindex.com
DNS:cmdtyquotes.com
DNS:cmdtytrends.com
DNS:cmdtyview.com
DNS:commoditydata.com
DNS:commodityindexes.com
DNS:commoditynewswire.com
DNS:commoditynewswires.com
DNS:commodityproducer.com
DNS:commodityproducerindex.com
DNS:commodityquotes.com
DNS:commoditytrends.com
DNS:commodityview.com
DNS:dev.grains.com
DNS:grains.com
DNS:scrapyardreport.com
DNS:cmdtydata.com
Technical

DNS Lookup

A Records

Host IP Address Class TTL
grains.com. 99.86.186.109 IN 60
grains.com. 99.86.186.58 IN 60
grains.com. 99.86.186.101 IN 60
grains.com. 99.86.186.75 IN 60

NS Records

Host Nameserver Class TTL
grains.com. ns-1341.awsdns-39.org. IN 21600
grains.com. ns-1998.awsdns-57.co.uk. IN 21600
grains.com. ns-691.awsdns-22.net. IN 21600
grains.com. ns-73.awsdns-09.com. IN 21600

MX Records

Priority Host Server Class TTL
1 grains.com. aspmx.l.google.com. IN 300
10 grains.com. aspmx2.googlemail.com. IN 300
20 grains.com. aspmx3.googlemail.com. IN 300
5 grains.com. alt1.aspmx.l.google.com. IN 300
5 grains.com. alt2.aspmx.l.google.com. IN 300

SOA Records

Domain Name Primary NS Responsible Email TTL
grains.com. ns-73.awsdns-09.com. awsdns-hostmaster.amazon.com. 900

TXT Records

Host Value Class TTL
grains.com. google-site-verification=fhAoBzlwWG7H1uIzTsMJqPL4StzRh8d84XNiMBDJ_EI IN 60
grains.com. v=spf1 IN 60

HTTP Response Headers

HTTP-Code: HTTP/1.1 200 OK
Content-Type: text/html
Date: 13th February, 2022
Cache-Control: public, max-age=3600, s-maxage=2592000
Server: AmazonS3
Content-Length: 5195
Connection: keep-alive
Last-Modified: 30th November, 2020
ETag: "c0c6dddff8fcfae60cefd41f77a6114d"
Vary: Accept-Encoding
X-Cache: Hit from cloudfront
Via: 1.1 58138fe3ecbee18734b57632af81590a.cloudfront.net (CloudFront)
X-Amz-Cf-Pop: EWR53-C2
X-Amz-Cf-Id: qcvqVWGY-qVjTzgBHPRMiZczhUymE35q4UgXwilpD-KK_HDC0x2vmQ==
Age: 426407

Whois Lookup

Created: 13th March, 1998
Changed: 12th March, 2021
Expires: 11th March, 2026
Registrar: GoDaddy.com, LLC
Status: clientTransferProhibited
clientUpdateProhibited
clientRenewProhibited
clientDeleteProhibited
Nameservers: ns-1341.awsdns-39.org
ns-1998.awsdns-57.co.uk
ns-691.awsdns-22.net
ns-73.awsdns-09.com
Owner Organization: Barchart.com
Owner State: Illinois
Owner Country: US
Owner Email: Select Contact Domain Holder link at https://www.godaddy.com/whois/results.aspx?domain=GRAINS.COM
Admin Email: Select Contact Domain Holder link at https://www.godaddy.com/whois/results.aspx?domain=GRAINS.COM
Tech Email: Select Contact Domain Holder link at https://www.godaddy.com/whois/results.aspx?domain=GRAINS.COM
Full Whois: Domain Name: GRAINS.COM
Registry Domain ID: 1035856_DOMAIN_COM-VRSN
Registrar WHOIS Server: whois.godaddy.com
Registrar URL: https://www.godaddy.com
Updated Date: 2021-03-12T08:22:14Z
Creation Date: 1998-03-13T00:00:00Z
Registrar Registration Expiration Date: 2026-03-11T23:00:00Z
Registrar: GoDaddy.com, LLC
Registrar IANA ID: 146
Registrar Abuse Contact Email: abuse@godaddy.com
Registrar Abuse Contact Phone: +1.4806242505
Domain Status: clientTransferProhibited https://icann.org/epp#clientTransferProhibited
Domain Status: clientUpdateProhibited https://icann.org/epp#clientUpdateProhibited
Domain Status: clientRenewProhibited https://icann.org/epp#clientRenewProhibited
Domain Status: clientDeleteProhibited https://icann.org/epp#clientDeleteProhibited
Registrant Organization: Barchart.com
Registrant State/Province: Illinois
Registrant Country: US
Registrant Email: Select Contact Domain Holder link at https://www.godaddy.com/whois/results.aspx?domain=GRAINS.COM
Tech Email: Select Contact Domain Holder link at https://www.godaddy.com/whois/results.aspx?domain=GRAINS.COM
Admin Email: Select Contact Domain Holder link at https://www.godaddy.com/whois/results.aspx?domain=GRAINS.COM
Name Server: NS-73.AWSDNS-09.COM
Name Server: NS-1341.AWSDNS-39.ORG
Name Server: NS-1998.AWSDNS-57.CO.UK
Name Server: NS-691.AWSDNS-22.NET
DNSSEC: unsigned
URL of the ICANN WHOIS Data Problem Reporting System: http://wdprs.internic.net/
>>> Last update of WHOIS database: 2022-02-18T15:29:15Z <<<
For more information on Whois status codes, please visit https://icann.org/epp

TERMS OF USE: The data contained in this registrar's Whois database, while believed by the
registrar to be reliable, is provided "as is" with no guarantee or warranties regarding its
accuracy. This information is provided for the sole purpose of assisting you in obtaining
information about domain name registration records. Any use of this data for any other purpose
is expressly forbidden without the prior written permission of this registrar. By submitting
an inquiry, you agree to these terms and limitations of warranty. In particular, you agree not
to use this data to allow, enable, or otherwise support the dissemination or collection of this
data, in part or in its entirety, for any purpose, such as transmission by e-mail, telephone,
postal mail, facsimile or other means of mass unsolicited, commercial advertising or solicitations
of any kind, including spam. You further agree not to use this data to enable high volume, automated
or robotic electronic processes designed to collect or compile this data for any purpose, including
mining this data for your own personal or commercial purposes. Failure to comply with these terms
may result in termination of access to the Whois database. These terms may be subject to modification
at any time without notice.

Nameservers

Name IP Address
ns-1341.awsdns-39.org 205.251.197.61
ns-1998.awsdns-57.co.uk 205.251.199.206
ns-691.awsdns-22.net 205.251.194.179
ns-73.awsdns-09.com 205.251.192.73
Related

Subdomains

Similar Sites

Organic Search (US) Competitors

Backlink Competitors

Sites with the same domain name

Domain Valuation Snoop Score
0/5
$1,188 USD 1/5

Sites hosted on the same IP address