Blog Production Specialist

Please login or register as jobseeker to apply for this job.

TYPE OF WORK

Full Time

SALARY

$400

HOURS PER WEEK

40

DATE UPDATED

Sep 4, 2026

JOB OVERVIEW

Kova Team manages SEO and content programs for a portfolio of roughly 20 clients, primarily in home services, construction, restoration, roofing, fencing, and remodeling, along with several professional-services accounts.

We are hiring a Blog Production Specialist to support the execution of our blog program. Content plans and keyword research are completed before the work reaches you, and our blog system automates much of the drafting and editing. Your responsibility is to run that system correctly for each client, apply careful human judgment where automation falls short, and ensure every published article is accurate, on-brand, correctly dated, and appropriately illustrated.

This is a production and quality-assurance position rather than a creative writing position. You will work closely with the owner, who remains accountable for the overall program, and will coordinate day to day with our virtual assistants. All work is tracked and communicated through ClickUp.

Scope and onboarding
You will not be handed the full portfolio on day one. New specialists begin with a small number of clients and receive direct support while learning the system, the clients, and our quality standards. As you become confident in the process, additional clients are added until you are supporting the full portfolio.

Once you are up to speed, the owner shifts into a check-in and oversight role while you manage the day-to-day flow of the blog system and coordinate the virtual assistants responsible for images.

Core responsibilities

Article setup and generation
Enter the assigned keyword and keyword title from the client's content plan into the blog system so the tool has the appropriate context and H1, then generate the draft.

Draft review
Review every article before it moves forward, confirming that it:
Reflects the client's documented brand voice
Describes only services the client actually offers
Contains no competitor names
Is accurate and appropriate for the client's market, service area, and customers

Client submission
Submit the reviewed article to the client for approval through the system.

Revisions and verification
When a client requests changes, apply them using our AI editing tool, then verify that each requested change was actually implemented. Verification may involve cross-referencing the revision request against the updated article using AI, reviewing it manually, or both. Any missed or partially applied edit should be identified and corrected before the article moves forward.

Publishing and scheduling accuracy
Publish approved articles to WordPress on their intended dates. Target dates are not always displayed accurately, so you will review the live site, identify which dates have already been filled, and determine where each article belongs. Articles that have passed their scheduled date should be backdated to that date rather than published on the current date, so that each client's blog reflects a consistent and deliberate publishing cadence.

Image coordination
After publishing, our virtual assistants add images. You are responsible for ensuring this is completed promptly and that the selected images genuinely match the content. For example, an article about flat roofing should not be illustrated with pitched roofs. When an image is not a good fit, provide the VA with clear, specific direction in ClickUp on what is needed and confirm the correction is made.

Final review
Complete a final pass on copy, images, formatting, and publish date before the article goes live.

Volume and cadence
Standard clients: 8 articles per month, approximately two per week, spaced roughly every four days
Higher-volume clients: 16 articles per month, approximately four per week, spaced roughly every two days

Consistency is more important than speed. Articles should land on their scheduled dates rather than in clusters.

Tools and communication
All task management and day-to-day communication run through ClickUp, including assignments, status updates, questions to the owner, and direction given to virtual assistants. Work should be documented there rather than handled informally, so that anyone reviewing an account can see where each article stands.

You will also work in our internal blog system, WordPress, and other client CMS platforms as needed.


Trust and system access
This role includes access to internal Kova systems and to the back end of client websites. We are looking for someone who treats that access with the seriousness it deserves: careful with changes, honest about mistakes, protective of client data, and reliable.

We take this seriously and expect the same in return. Candidates should be comfortable with reference checks and with signing a confidentiality agreement.

Qualifications

Required
Excellent written English, with the ability to recognize awkward phrasing, factual inconsistencies, and off-brand tone without being prompted
Strong, sustained attention to detail across repetitive work
Sound judgment and problem-solving instincts: the ability to notice when something is missing, incorrect, or illogical, and to resolve it rather than pass it along
Comfort with structured, administrative, process-driven work
Clear and direct communication in ClickUp, including the ability to give specific, actionable feedback to virtual assistants
Availability with Pacific Time business hours: 9am - 5pm PST
Dependable self-management in a remote role with recurring deadlines
Demonstrated trustworthiness and discretion

Preferred
Experience in copywriting or SEO blog content
Hands-on experience with WordPress, Webflow, HubSpot, or comparable CMS platforms
Familiarity with AI writing and editing tools
Experience with ClickUp or a comparable project management platform
Prior agency or multi-client experience

About the nature of the work
We want to set accurate expectations. This role follows the same defined process repeatedly, across many clients, every month. You will not be writing articles from scratch or setting creative direction. The value of the position lies in consistency, accuracy, and the judgment to catch what an automated system would otherwise miss.

Candidates who find satisfaction in well-run, dependable processes tend to do very well in this role.

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0008
Controller Execution Time ( Jobseekers / Job )  0.0177
Total Execution Time  0.0190
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,522,968 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Blog-Production-Specialist-1723423
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0114 seconds)  (Hide)
0.0004   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0008   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1723423
 LIMIT 1 
0.0004   SELECT *
FROM `employers`
WHERE `employer_id` = 735527
 LIMIT 1 
0.0008   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1723423
AND `misc`.`idIS NULL 
0.0005   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-09-22',ej.date_added) duration_daysDATEDIFF('2026-09-22',e.rebill_date) duration_rebillej.*, e.deactivate FROM employers eemployer_jobs ej WHERE e.employer_id ej.employer_id AND
                                   ((
e.user_level >= '500' AND ej.date_added <= e.rebill_date)
                                   OR 
e.employer_id '' OR (ej.date_approved <> '2000-01-01' and DATEDIFF('2026-09-22',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1723423' 
0.0007   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1723423 
0.0010   UPDATE employer_jobs SET hit_counts '***Sep-04-2026=466***Sep-05-2026=26***Sep-06-2026=30***Sep-07-2026=25***Sep-08-2026=25***Sep-09-2026=9***Sep-10-2026=7***Sep-11-2026=5***Sep-12-2026=9***Sep-13-2026=3***Sep-14-2026=9***Sep-15-2026=6***Sep-16-2026=7***Sep-17-2026=5***Sep-18-2026=8***Sep-19-2026=2***Sep-21-2026=1***Sep-22-2026=1' WHERE job_id'1723423'  
0.0007   UPDATE employer_jobs SET monthly_hits '***Sep-2026=644' WHERE job_id'1723423'  
0.0009   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1723423' AND status LIKE 'sent%' ORDER BY id DESC  
0.0004   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1723423 
0.0042   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '735527'
AND `date_added` >= '2022-06-08' 
0.0005   select from teasers 
0.0003   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)