Use curl to inspect the HTML a server returns for a share URL, then check its Open Graph metadata, redirect chain and—if needed—response to the target crawler’s documented User-Agent. Start with curl -sS -D response-headers.txt -L 'https://example.com/page' -o response.html. This follows HTTP redirects, saves the response headers and HTML separately, and gives you the raw server-delivered page to diagnose.
Fetch the share URL and inspect its Open Graph tags
Use the exact URL people share, including its path and query string. The Open Graph protocol requires og:title, og:type, og:image and og:url in the page metadata. og:description is optional but generally recommended. See the Open Graph protocol.
curl -sS -D response-headers.txt -L 'https://example.com/page' -o response.html
Then search the saved HTML for the key properties:
grep -i 'property="og:' response.html
Check the content value of each required property. Confirm that og:image points to the intended image and that og:url identifies the intended canonical object URL. The protocol defines og:url as the permanent ID of the object.
For a quick look without saving the HTML, use:
curl -sS -L 'https://example.com/page' | grep -i 'property="og:'
This is a text search, not an HTML parser: it may miss tags with different attribute ordering, single quotes, or formatting. If it returns nothing, inspect the whole response file before concluding the tags are absent.
Recommended Free Tools
#1 Best Overall
Check HTTP status and redirects
By default, curl does not follow HTTP Location redirects. The curl project documentation notes that it “does not follow Location: headers by default, but displays such pages in the same manner it displays all HTTP replies.” Add -L (or --location) to follow redirects and inspect the final response.
curl -sS -D - -L 'https://example.com/old-path' -o /dev/null
-D - writes response headers to standard output; -o /dev/null discards the body. Review every status and Location header in the chain, not just the final status. An unexpected destination can explain why a crawler sees different metadata than you expected. To inspect both the route and final page, fetch the original URL with headers saved, then inspect the saved HTML as in the first step.
Rank #2
For a request that does not follow redirects, remove -L and check the response status and Location header. This helps distinguish a redirect from an error page or a successful HTML response.
Compare the default response with a crawler User-Agent
A server may vary its response based on the request’s User-Agent. First fetch with curl’s default User-Agent, then repeat with the target platform’s documented crawler identifier:
Rank #3
curl -sS -L 'https://example.com/page' -o default.html
curl -sS -L -A 'DOCUMENTED_CRAWLER_USER_AGENT' 'https://example.com/page' -o crawler.html
diff -u default.html crawler.html
Replace DOCUMENTED_CRAWLER_USER_AGENT with the identifier documented by the platform you are troubleshooting. There is no single universal social-crawler string established here. Curl’s -A option sets the User-Agent header; it lets you compare server responses, but does not prove the platform will parse the page identically. Network reachability, access controls, caches and platform-specific parsing can still affect the result.
Look for duplicate and incomplete metadata
Search the entire document, not only the first matching line. Open Graph properties can appear more than once; when conflicting values are repeated, the protocol gives precedence to the first value from top to bottom. A stale first og:title or og:image can therefore matter even if a correct value appears later.
Rank #4
- Sturdy Backing Support: Place on lap or outdoor bench without curling, stiff cover prevents page flapping in breeze, maintains flat writing surface for park sketching and commute journaling.
- Red Margin Guidance: Left column reserved for annotations or page numbers, right space holds 27 clean lines, reduces eye strain during lengthy study sessions and project brainstorming.
- Tear-Off Top Binding: Remove sheets cleanly along score lines, no loose fragments or damaged corners, paper accepts pencil and rollerball ink evenly for daily schedules.
- Designated Header Zone: Top section marked for date and subject, color-coded covers help separate courses or clients, simplifies folder organization after semester ends.
- Multi-Purpose 4-Pack: Four vibrant notepads for dorm desks, office cubicles, or home command centers, 200 total sheets support semester-long note-taking without restock.
For image metadata, the protocol describes structured properties including og:image:width, og:image:height and og:image:alt. Place structured fields after the image property they describe. If there are multiple image entries, keep each image’s associated fields with its root og:image. The protocol says a page specifying og:image should also specify og:image:alt; that value describes the image rather than acting as its caption.
Know what curl cannot verify
Curl retrieves HTTP responses; it does not execute JavaScript or perform navigation triggered by an HTML meta refresh. If a script inserts Open Graph tags only after the page loads in a browser, those tags will not be present in curl’s raw HTML. Check whether the server-rendered response already contains the metadata.
Do these 3 things before closing this tab:
1Fix the driver behind crashes, sound loss and screen glitches2Clear out junk files and repair common Windows errors3Scan for outdated or missing drivers - takes under a minuteBest Value
If the raw HTML is correct but the preview remains wrong, use the destination platform’s own preview or debugging workflow to investigate how it parses or caches the URL. The Open Graph protocol identifies Facebook’s Object Debugger as Facebook’s official parser and debugger, but platform-specific access requirements and current workflow should be checked directly with Facebook. Curl alone cannot establish a platform’s cache duration or image acceptance rules.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Troubleshoot common results
- No
og:matches: Openresponse.htmland search more broadly forog:title. The tag may use different attribute ordering or quote style, or it may be added only by JavaScript. - You see an error, denial or unexpected page: Review
response-headers.txtand the final status after redirects. Compare the originally requested URL with eachLocationdestination. - The browser shows different tags: Compare its rendered page with curl’s raw HTML. Client-side scripts can change the browser DOM without changing the server response curl fetched.
- The crawler may receive different content: Compare the default request and a request using the target platform’s documented User-Agent. A matching response still does not guarantee identical platform parsing or cache state.
- The right value appears, but a preview uses another: Search for duplicate properties. When repeated values conflict, the first value takes precedence under the protocol.
- The tags look right but the share preview is still wrong: Use the relevant platform’s own debugger or preview workflow. Curl can show the HTTP response, not establish how a platform interprets or caches it.
Or skip the browser setup
For a screenshot of what a page visibly renders, ScreenshotNeo offers a one-request API and an MCP server for AI agents. It is not a replacement for inspecting raw HTML or validating a platform’s Open Graph parser, but it can help when the issue is what a visitor sees on the page.
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://example.com/page -o shot.webp
See the ScreenshotNeo API documentation for request options. Cookie banners are accepted and removed before capture, along with known consent platforms, newsletter popups and chat widgets; bot checks, blank pages and failed loads are not billed. An MCP server lets AI agents take screenshots. The free plan includes 1,000 screenshots a month with no card; paid plans start at $5 for 3,000. Learn about ScreenshotNeo or sign up for 1,000 free screenshots a month, with no card.
Frequently Asked Questions
Does curl follow redirects automatically?
No. Use -L or --location to follow HTTP redirects.
Will curl show Open Graph tags added by JavaScript?
No. Curl fetches the HTTP response but does not run page JavaScript.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




