How to Monitor U.S. Election Candidates’ Websites
Build a dated inventory of U.S. campaign websites, check it on a clear schedule, preserve meaningful changes, and verify voting information with election officials.
To monitor U.S. election candidates’ websites, make a dated inventory of campaign URLs, check each page on a stated schedule, and preserve evidence when something material changes. Record when and how you observed the page, and verify voting procedures, deadlines, polling places, and results with the relevant state or local election office.
For a small list, scheduled manual checks may be enough. For a larger list, automate page captures or change alerts, then review important differences yourself. No single archive or alert tool should be treated as a complete, real-time record of every candidate website or every change.
1. Define what you are monitoring
Write down the contests, candidates, offices, and jurisdictions in scope before collecting pages. Decide which pages matter to your reporting question. Common choices include platform and issue pages, endorsements, biographies, donation language, event notices, press releases, candidate-filing claims, and links to voting information.
A campaign website is only one part of a campaign’s public communications. Candidates may also publish through social channels, advertisements, email, and other websites. The Library of Congress Elections Web Archive notes that archived campaign sites may include associated social media channels, but its collection is not a complete record of every communication.
Set a check cadence that fits the question. Daily checks may suit a fast-moving story; weekly checks may be adequate for slower changes. State the interval and record missed checks. A scheduled process shows when you looked; it does not establish that you watched the site continuously between observations.
2. Build and verify a candidate-site inventory
Start with links published by the campaign and relevant committee records. For a federal political committee with an official website, Federal Election Commission (FEC) guidance says the committee must disclose the website address on its Statement of Organization (Form 1). If a registered committee later creates a website or changes its address, the FEC guidance says it must file an amended Form 1 within 10 days. These filing rules concern committees covered by federal requirements; state and local candidates may use different systems.
Keep the campaign’s site distinct from an election office’s site. A campaign page may provide useful information about a candidate’s position or events, but it is not an official source for election administration. A .gov domain is restricted to verified U.S. government organizations; the domain distinction helps identify government sites, but does not by itself establish that every page contains the information you need.
| Inventory field | What to record |
|---|---|
| Candidate and contest | Name, office, jurisdiction, and election date if relevant |
| Campaign and committee | Campaign name and federal committee name or ID, when available |
| URLs | Campaign homepage, monitored page URLs, and relevant official election-office URL |
| URL source | Where you found or verified the address, such as a campaign link or committee record |
| Last checked | Date, time, and time zone of the most recent direct check |
| Monitoring method | Manual visit, screenshot, page-change alert, or archive lookup |
When a federal committee’s website address changes, check the relevant committee filing where possible. A filing can help establish a disclosed address; it does not prove that every page on that site is current or that the site represents every candidate in the contest.
3. Choose a monitoring method
| Method | Useful for | Limits to account for |
|---|---|---|
| Scheduled manual review | A short candidate list, direct context, and human judgment | Takes time and can miss changes between visits |
| Automated page-change alerts | Routine checks across a larger list | Tools vary in their handling of dynamic pages, images, PDFs, blocked content, and content that changes without visible text |
| Screenshot captures | Preserving visual appearance, layout, and image changes at a recorded time | A screenshot records what the capture process rendered; it does not establish authorship, intent, or truth |
| Library of Congress Elections Web Archive | Looking for selected historical captures of campaign sites | Its collection description says campaign sites have been archived weekly during election seasons since 2000; it is not a live, comprehensive alert feed |
| FEC committee records | Checking website addresses disclosed by relevant federal committees | Applies to committees subject to FEC filing rules; it does not establish that all candidates are listed or a site is current |
When evaluating an alert tool, check whether it can render JavaScript, capture the pages you need, detect image or PDF changes, retain a history, export observations, and show when a check failed. Confirm how it handles access restrictions and what its terms permit. These are evaluation criteria, not an endorsement of any particular monitoring vendor.
Some changes are not text changes: a link may move, an image may be replaced, a PDF may be updated, or content may appear only after JavaScript runs. If those details matter, preserve the rendered page or public document as well as any text-change alert. Use only public pages and public records; do not bypass logins or other access controls.
4. Preserve each material observation
When a meaningful change appears, preserve enough context for another person to understand what you saw and how you saw it. Keep an observation log with:
- Candidate, campaign, office, and jurisdiction.
- Page URL and page title.
- Observation date and time, including time zone.
- The change you observed and a short exact excerpt when useful.
- A screenshot, downloaded public document, or archive reference, as appropriate.
- The source and method used to retrieve the page.
- Whether the record is a direct observation of the current page, a historical archive capture, or your interpretation.
Preserve the original URL and label the different dates clearly: the date you checked the page, the date a page says it was published, and the date an archive captured it are not necessarily the same. If a page redirects or disappears, record that outcome and the time instead of silently replacing the old address in your inventory.
The Library of Congress describes its United States Elections Web Archive as covering campaign sites weekly during election seasons since 2000, including presidential, congressional, and gubernatorial elections. Coverage is selected, not guaranteed for every candidate or every change. A missing capture does not show that a page never existed or that a change did not happen.
5. Verify election information and report uncertainty
CISA and the U.S. Election Assistance Commission identify state, local, tribal, and territorial election officials as the primary sources of official election information. If a campaign page gives a registration deadline, polling location, voting instruction, candidate-filing detail, or result, check the relevant election office and link to that source. Attribute campaign claims to the campaign and include when you observed them.
Keep observation separate from interpretation. A text change alone does not prove a retraction, concealment, policy shift, motive, or authorship. Describe what changed, cite the saved version, and explain what you can and cannot establish. If you rely on an archive, say so and identify the capture date when available.
Campaign-finance disclaimer requirements depend on the communication, medium, authorization, and format. The FEC’s advertising and disclaimer guidance also carries a notice that the page may not reflect a recent Supreme Court decision. Treat this as a reporting issue, not a legal conclusion about a particular candidate page; consult current law and qualified counsel when a legal determination is needed.
6. Automate visual records with screenshots
A screenshot can preserve how a public page appeared at a particular observation time, including layout and images that a text-only comparison may miss. Keep the URL, timestamp, time zone, capture method, and original file together in your log. If a page depends on scripts, consent banners, or delayed content, check that the capture reflects the content relevant to your observation and note any limitations.
For repeatable captures, use a scheduled job or a monitoring workflow that records failures as well as successful snapshots. A timeout or blocked page is not evidence that the site was blank or unchanged. Retry when appropriate, preserve the failure status, and avoid presenting a failed capture as a successful observation.
Or skip the browser setup
ScreenshotNeo is a website screenshot API and MCP server for developers. A single request can save a page as an image or PDF. For a recordkeeping workflow, store the returned file with your own candidate, URL, timestamp, and time-zone log. Read the ScreenshotNeo API documentation for request options.
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://example.com/campaign -o shot.webp
import requests
r = requests.get(
"https://api.screenshotneo.com/v1/shot",
params={"access_key": "YOUR_API_KEY", "url": "https://example.com/campaign"},
timeout=90,
)
open("shot.webp", "wb").write(r.content)
const q = new URLSearchParams({
access_key: 'YOUR_API_KEY',
url: 'https://example.com/campaign'
});
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
if (!res.ok) throw new Error(`Screenshot request failed: ${res.status}`);
const fs = await import('node:fs/promises');
await fs.writeFile('shot.webp', Buffer.from(await res.arrayBuffer()));
ScreenshotNeo removes known cookie and consent banners, newsletter popups, and chat widgets before capture; each step can be turned off. Bot checks, blank pages, timeouts, failed loads, and cache hits are not billed, and responses identify the page verdict and billing status in headers. Its MCP server provides take_screenshot, get_page_info, and capture_pdf tools for AI agents. The free plan includes 1,000 screenshots a month with no card; paid plans start at $5 for 3,000 screenshots.
Sign up free for 1,000 screenshots a month, with no card required.
7. Troubleshoot common monitoring problems
| Problem | Likely cause | What to do |
|---|---|---|
| The alert says a page changed, but the text looks identical | Layout, ads, timestamps, rotating content, or hidden markup may have changed | Compare saved screenshots and relevant page sections; adjust the monitored region or alert sensitivity if the tool supports it |
| No alert arrives | The checker may have failed, missed dynamic content, been blocked, or not run at the expected cadence | Inspect the run history, test a direct visit, and record the missing check; do not treat silence as proof of no change |
| The screenshot is blank or incomplete | Timeout, script-rendering delay, blocked resources, or an interstitial may have interrupted loading | Retry later, allow time for content to render, and record the failure or limitation rather than treating it as a valid page snapshot |
| A page is absent from the Library of Congress archive | The collection is selective and its described cadence is weekly during election seasons | Use other dated records; absence from the collection does not prove the page never existed |
| A campaign URL differs from the committee record | The campaign may have changed domains or the record may not yet reflect the change | Record both addresses and check the relevant filing and campaign links; avoid assuming either page is current without verification |
| A campaign gives a different voting date or location | The campaign page may be outdated, mistaken, or describing a different jurisdiction | Verify with the responsible state or local election office and cite that official source |
| A disclaimer appears absent or different | Requirements can vary by communication type, medium, authorization, and format; guidance may change | Preserve the page and context, consult current FEC material and applicable law, and avoid declaring a violation from appearance alone |
8. Reliability, workload, and cost
Monitoring frequency and preservation detail both affect workload. A manual process is easy to inspect but consumes time as the candidate list grows. Automation can cover routine checks at scale, but still needs review for false alerts, missed dynamic content, blocked pages, and failed runs. Choose an interval based on the reporting need and describe it honestly.
Keep a simple failure log: scheduled check time, whether it ran, whether it loaded the intended public page, and any retry. Separate successful captures from timeouts and access failures. For material findings, keep the original capture and a second copy in the publication’s normal records system, with clear filenames or metadata that retain the URL and observation time.
Costs depend on whether your process is manual, uses a page-alert service, or captures many pages through an API. The sources for this guide do not establish pricing or performance for third-party monitoring products. Compare current terms, retention, export options, and coverage before adopting one. For ScreenshotNeo’s own plans, the published options are Free: 1,000 shots/month; Starter: $5 for 3,000; Growth: $15 for 15,000; Pro: $39 for 60,000; Scale: $99 for 250,000; and Business: $249 for 1,000,000. Yearly billing gives two months free, and every feature is available on every plan. These are screenshot API plans, not a guarantee of continuous site monitoring.
Checklist before publishing a change report
- Is the campaign URL tied to a named candidate, office, and jurisdiction?
- Have you recorded the observation time and time zone?
- Can a reader distinguish a live observation from an archive capture?
- Have you preserved the relevant page, passage, screenshot, or public document?
- Have you checked voting and election-administration details with the responsible election office?
- Does your wording describe the observed change without assigning unsupported motive or authorship?
- Have you stated gaps, failed checks, and archive coverage limits?
FAQ
Does the Library of Congress archive capture every candidate’s website?
No. Its collection is selected and describes weekly election-season captures for covered offices. It should be used for historical context, not as proof that every site or change is represented.
Does a missing archived page prove the page was never online?
No. A collection can have gaps. Record the sources you checked and use other dated public evidence where available.
Is a campaign website an official source for voting instructions?
No. Verify registration, deadlines, polling places, voting procedures, and results with the responsible election office.
Does a changed page prove a candidate changed position?
No. It proves only that the versions you observed differ. Preserve both versions and report the change with dates and context.


