Website problems fixed, on your existing site

Who: Stephen Psaradellis, Arlington Heights, Illinois. I fix problems on existing small-business sites with an AI system I run; I am responsible for the work and the result.

Track record: my code fixes have been reviewed and merged into the open-source projects SolidJS, Solid Router and Turso. Worked examples of site fixes are below.

Your side: no password shared, ever. You pay only after the fix works for you, by a card invoice from ShortForge, my invoicing account. More about me.

Contact forms that never deliver, pages that fall apart on phones, a plugin or app update that broke something, "Not secure" warnings, slow pages. Fixed on WordPress, Shopify, Wix, Squarespace and Webflow without a redesign, at a fixed price you see before anything is touched.

Got a problem on your site right now? Send me the address and one line on what is wrong (a screenshot is plenty). I check it free and reply with the likely cause and a fixed price from the table below, before touching anything. You pay only after it works. Or check your home page yourself first (free, about 20 seconds).
Email me the siteOr order on Fiverr

Worked examples: broken, then fixed

Customers on phones cannot tap your numberA plain-text phone number turns callers away; the one-line link that fixes it. Your website stopped loadingAny host: a lapsed plan, domain or certificate, or a crashed update; diagnosed from outside, brought back, set to not happen again. The web person left with the loginsDomain, hosting or site login in a former designer's name: find who holds each, get the domain back first, then the rest. Contact form messages never arriveWhy the form "works" but the owner gets nothing, and the four-part fix. Contact form flooded with spamBots, pasted sales pitches, or your form mailing strangers: tell which from ten messages, then a honeypot, free Turnstile and content filtering. WordPress is not sending emailsForm, order and password-reset mail that never arrives: the web server was not allowed to send for the domain; moved to the mailbox provider, SPF, DKIM and DMARC pass. "There has been a critical error on this website"WordPress: the crash after an update or a PHP change; the one plugin found from the log, site back, nothing lost. "Error establishing a database connection"WordPress: the login details, the database server or damaged tables; which one it is, fixed without a reinstall or an old backup. Red "Deceptive site ahead" warningChrome, Firefox or Safari block your whole site with a red page: find the flagged phishing or malware pages, close the way in and get Google's review passed. Site sends visitors to a spam pagePhone visitors from Google redirected to a prize page, spam titles in search, "This site may be hacked": the hidden redirect, backdoors and unknown admin removed, review passed. "Redirected you too many times"ERR_TOO_MANY_REDIRECTS: http/https or www settings that disagree, or Cloudflare Flexible SSL; the loop found and fixed with https left on. "Briefly unavailable for scheduled maintenance"WordPress stuck after an update: the leftover .maintenance file removed and the half-finished update completed, no backup restored. A blank white page, no message at allWordPress white screen: the PHP error found in the log, the plugin or theme behind it switched off, no reinstall and no settings lost. Every page but the home page says "Not Found"WordPress after a host move: the missing .htaccess or permalink rules put back, every page at its old address, nothing recreated. Uploading a theme says "The link you followed has expired"WordPress: the upload is over the host's size limit, raised just above the file (or copied in by file manager), no plugin added. Images not showing: blank boxes or broken iconsWordPress: open one broken image in a new tab; its address and status name the cause (old domain after a move, missing uploads, 403, CDN/WebP rewrite, lazy-load). A photo will not upload: "exceeds the maximum upload size"WordPress: a 6 MB phone photo against the host's 2 MB limit; photos resized, the limit raised in the host panel for the menu PDF, nothing pasted into .htaccess. "502 Bad Gateway", "503" or "504 Gateway Timeout"WordPress: the front server waited on PHP and got nothing back. Find which hop failed, then the crash, the busy workers or the slow job (here a 9 GB backup set to the lunch rush) - not a longer timeout. Cloudflare "Error 521", "522", "524" or "526"Any site behind Cloudflare: read the Browser / Cloudflare / Host row, then the fix per number - a firewall turning Cloudflare away, an old IP after a host move, one slow job, or the SSL mode. "429 Too Many Requests" or Cloudflare error 1015WordPress: something is counting requests and turning people away. Find the counter (host, security plugin, Cloudflare, a remote API) and what feeds it: bots on an endless calendar, login attacks, admin polling. "403 Forbidden" on every page after a host moveWordPress: the files were unpacked one folder too deep, so the server had no front page; moved up, permissions 755/644, permalinks saved. How to tell server, plugin, firewall and Cloudflare 403s apart. "Parse error: syntax error, unexpected ..."WordPress: a pasted snippet with curly quotes took the shop and the admin down; the file and line from the message, quotes retyped, snippet moved to a plugin that checks it. "500 Internal Server Error" on every pageWordPress: one php_value line pasted into .htaccess took the whole site down; file renamed, permalinks saved, upload size set in the host panel. "Allowed memory size of ... bytes exhausted"WordPress: a 60-photo gallery outgrew the host's 64 MB allowance, raised to 256 MB in the panel and wp-config.php, no plugin removed. WordPress will not save: "not a valid JSON response"WordPress: the host firewall refused one page's save, allowed for that site only, saving again with permalinks and the firewall untouched. The login page just reloads and will not let you inWordPress: the two site addresses disagreed after adding SSL, matched in wp-config.php, back in without a new admin user. Logged in, but "Sorry, you are not allowed to access this page"WordPress: the host move renamed the tables to a new prefix but the stored role names kept the old one; renamed in the database, admin back without a new user. A plugin won't install: "Destination folder already exists"WordPress: a timed-out update left a half-copied plugin folder that blocked every new install; renamed it, installed fresh, settings and bookings kept. A plugin update broke the booking buttonWordPress: finding the clashing plugin from the error, fixed without removing it. WordPress years out of dateUpdated to the current release with a backup, a staging copy and every form checked after. "PHP Update Recommended" on the dashboardWordPress: a 2019 site still on PHP 7.4; plugins updated and pruned first, then one setting in the host panel, Site Health back to Good. Add to cart stopped workingShopify: an uninstalled app's leftover code, fixed on a duplicate theme. An older site shrinks on phonesHand-built or older themes: a fixed-width desktop layout made to fit a phone, without changing the desktop look. The Google Map on the contact page is a grey boxAny builder: "This page can't load Google Maps correctly" from a key with no billing; swapped for the free embed, no key needed. The sidebar dropped below the postWordPress: a stray </div> or a too-wide table in one post pushes the sidebar to the bottom on desktop; find which post and fix it. Google shows a grey globe instead of your iconAny builder: no site icon set, a broken icon address after a move, robots.txt or a non-square logo; find which in two minutes and get your icon on Google and the browser tab. Your site suddenly shows plain text, no stylingWordPress: the stylesheet is not loading after a host move, an https switch, a cache clear or a dead CDN; find the failing file in two minutes and fix the cause. The menu button does nothing on a phoneWordPress: a speed plugin delaying the menu script, or an invisible layer over the button; find which with one console line and get the menu back. Scheduled posts say "Missed schedule"WordPress: the built-in scheduler switched off in a host move, blocked by a firewall or starved by a cache; find which in Site Health and fix it with one server job. "This site can't be reached"Any host: NXDOMAIN, a timed-out server, a parked "domain expired" page or "Account Suspended"; read the code, find which, and get the site and email back. Your home page says "Page not found"Any builder: the link on your listing opens a 404, a paused store or a retired Google business.site page; find which and fix it. Your home page has no titleThe browser tab shows a bare address and Google invents your headline; set the title in your builder in a minute. The page source names your WordPress versionWordPress: a hidden line tells scanning tools which version you run; update first, then remove it with two lines. Photos with no descriptionsAny builder: blind visitors hear file names and Google learns nothing; add one short line per photo. The footer still shows an old yearAny builder: a copyright year stuck in 2019 makes the business look closed; update it or let the site print it. Site not showing up on GoogleNot found even for your own name: the "discourage search engines" box, a noindex tag or robots.txt left from staging; four checks, then Google is told. Google shows the wrong words under your nameAny builder: no description, so Google quotes your menu or cookie notice; one sentence in the page settings fixes it. Changes not showing on the live siteUpdated a page but visitors still see the old one? A private-window test finds which cache holds it (browser, plugin, host, Cloudflare, builder CSS) or the copy you really edited. Elementor stuck on the loading screenWordPress: the editor spins forever or says the preview could not be loaded; Safe Mode and one browser tab show whether it is memory, a plugin, a speed setting or the firewall. WooCommerce checkout not workingPlace order spins, session expired, no payment or shipping options: one logged-out test order and the logs show which, then the fix for each cause. Whole site slow to loadSlow server or heavy page? One PageSpeed test tells them apart; then caching, current PHP, the heavy plugin, photos and outside scripts. Slow on phones because of big photosAny builder: camera-size photos of 2-8 MB; resize and save as WebP at a tenth of the size. The whole site is tiny on phonesAny builder: a missing viewport tag, fixed with one line in the page head. Free check: what is wrong with my website?Type your address; see 12 checks in plain English (Not secure, phone layout, Google title, old year, tap-to-call...), each with a free fix guide. Free check: can email in your name be forged?Enter your domain; see SPF, DKIM and DMARC in plain English, with the records to add. Runs in your browser. For web agencies: local prospect packsSmall-business sites by city with defects already checked and evidenced. Free 10-row sample for any city. For web designers: Keystone HTML templateA 16-page local-service site template (plumbing, dental, cleaning, legal), W3C-valid and axe-clean. $29, or $69 for unlimited client sites. For MSPs: email-security prospects by metro13,096 local businesses with no DMARC or only p=none, with the mail host and DNS evidence. Free 10-row sample per metro. GoDaddy email with no SPF record: the 10-minute fix83% of 1,017 domains on GoDaddy email publish no SPF. The exact records to add in GoDaddy DNS. Report: 86% of small businesses can have their email forged19,113 small-business email domains checked in October 2026, by business type and email host. Contact form fails on phonesA mailto: form sends nothing from most phones; point it at a real form handler, any host. Your address without the www failsAny host: the short name typed from a business card shows an error; one DNS record fixes it. Email in your name can be forgedAny domain: no DMARC means a fake "our bank details changed" email passes as you; the three records that stop it. Hidden casino or pharmacy spam on your siteWordPress and others: planted links Google reads but visitors cannot see; cleanup, close the hole, tell Google. Japanese text in your Google resultsWordPress and others: the Japanese keyword hack; find the cloaked pages, remove the stranger from Search Console, clean up, ask Google for a review. Browsers block part of your pageAny builder: the padlock shows, but http:// fonts, scripts or a booking widget are silently blocked; switch each to https. Links that lead to "Page not found"Any builder: a redesign left old links behind; fix each one and forward the old addresses. "Not Secure" or "Your connection is not private"WordPress and any host: the warning code names the cause (no https, expired certificate, wrong name, mixed content); redirect lines for Apache, Nginx, Cloudflare, Wix. The header falls apart on phonesElementor: five layout faults on mobile and the CSS that fixes them.

How it works

  1. You send the site and what is wrong (a screenshot is plenty).
  2. I reply with the likely cause and a fixed price, before touching anything.
  3. You add me as a user or collaborator. You never share a password, and you can remove me the moment we are done.
  4. Full backup first. Then the fix, checked on desktop and phone.
  5. You get a short list of every change. You pay only after it works on your side.

Prices

Putting in a fix I already wrote for you (one line pasted into your site)$49
Email security records (SPF, DKIM, DMARC) added at your domain company, so email in your name cannot be forged$75
One problem (a form, an HTTPS redirect, a broken feature)$150
Each further problem on the same site+$50
A layout that falls apart on phones, or cleaning up a hacked site+$100
The most any list of fixes on one site costs$400

The price I quote you is worked out from this table, and it is the price you pay. A site that does not load at all counts as one problem, $150.

Agencies: overflow client fixes at the same prices, delivered under your name.

Who you are dealing with

I am Stephen Psaradellis, Arlington Heights, Illinois. An AI system I run checks sites and does most of the investigation and the fix; I am responsible for the work and for the result. Write to s.n.psaradellis@gmail.com, or reply to the email that brought you here.