InDesign Layout Specialist – Ebook Formatting

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

TYPE OF WORK

Gig

WAGE / SALARY

$3 to $5 per hour

HOURS PER WEEK

TBD

DATE UPDATED

May 15, 2026

JOB OVERVIEW

I am looking for a detail-oriented InDesign specialist to professionally format a 100+ page ebook.

This is NOT a Canva project.

The ebook is a professional hunting land authority guide that will be sold directly from my website. It must look clean, polished, and high-quality.

You must be comfortable working inside Adobe InDesign and creating structured book layouts.

This project may lead to ongoing work on future ebooks and digital products.

???? Responsibilities

Import structured Word manuscript into InDesign

Create professional paragraph styles

Design clean 6x9 layout

Build clickable Table of Contents & Links

Apply consistent typography throughout

Set up running headers and page numbers

Format front matter (title page, copyright, about author)

Export professional PDF (interactive + print-ready)

Make revisions based on feedback

? Requirements

Advanced proficiency in Adobe InDesign (long-document layout experience required)

Strong understanding of Paragraph Styles and automated Table of Contents creation

Experience formatting 80+ page ebooks or books with clean, professional typography

Strong experience using Adobe InDesign

Portfolio showing book or long-document layouts

Strong typography understanding

Attention to spacing and alignment

Experience creating clickable TOC in InDesign

Ability to follow structured instructions

Reliable internet connection

Able to work independently

???? This Position Is NOT For:

Canva-only designers

Photoshop-only designers

Social media graphic designers

Beginners learning InDesign

You must have real layout experience.

???? Project Details

Approximately 50+ pages

Clean professional design (minimal graphics)

Serif body font, clean hierarchy

Structured headings already prepared

???? Compensation

Please include:

Your hourly rate OR project rate

Estimated time to complete

Samples of book or document layout work

???? To Apply

Start your application with:

“I have InDesign book layout experience.”

Then include:

Links to 2–3 book/document samples

Your experience with TOC generation

Your availability (hours per week)

Applications that do not follow instructions will not be considered.

???? Opportunity

This may become a long-term working relationship for:

Future ebooks

Digital guides

Workbooks

Ongoing publishing projects

SKILL REQUIREMENT
VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0007
Controller Execution Time ( Jobseekers / Job )  0.0481
Total Execution Time  0.0494
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,513,312 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/InDesign-Layout-Specialist-Ebook-Formatting-1583522
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0427 seconds)  (Hide)
0.0004   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0003   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1583522
 LIMIT 1 
0.0008   SELECT *
FROM `employers`
WHERE `employer_id` = 665119
 LIMIT 1 
0.0335   SELECT COUNT(DISTINCT t.id) as cnt
FROM 
`t_thread` `t`
INNER JOIN `t_message` `mON `t`.`id` = `m`.`thread_id`
INNER JOIN `t_message_employer` `eON `m`.`id` = `e`.`message_id`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1583522
AND `misc`.`idIS NULL 
0.0005   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-06-22',ej.date_added) duration_daysDATEDIFF('2026-06-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-06-22',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1583522' 
0.0009   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1583522 
0.0018   UPDATE employer_jobs SET hit_counts '***Feb-19-2026=116***Feb-20-2026=33***Feb-21-2026=24***Feb-22-2026=22***Feb-23-2026=12***Feb-24-2026=20***Feb-25-2026=8***Feb-26-2026=2***Feb-27-2026=3***Feb-28-2026=1***Mar-01-2026=2***Mar-02-2026=4***Mar-03-2026=2***Mar-04-2026=4***Mar-05-2026=1***Mar-06-2026=2***Mar-07-2026=3***Mar-09-2026=6***Mar-10-2026=3***Mar-11-2026=1***Mar-12-2026=2***Mar-13-2026=2***Mar-15-2026=2***Mar-16-2026=2***Mar-19-2026=1***Mar-20-2026=1***Mar-23-2026=1***Mar-26-2026=1***Mar-28-2026=2***Apr-01-2026=1***Apr-04-2026=1***Apr-12-2026=1***Apr-15-2026=1***Apr-20-2026=1***Apr-21-2026=1***Apr-24-2026=1***Apr-26-2026=1***Apr-27-2026=2***May-02-2026=1***May-08-2026=1***May-15-2026=310***May-16-2026=53***May-17-2026=13***May-18-2026=23***May-19-2026=5***May-20-2026=26***May-21-2026=17***May-22-2026=9***May-23-2026=5***May-24-2026=6***May-25-2026=7***May-26-2026=7***May-27-2026=13***May-28-2026=2***May-29-2026=7***May-30-2026=2***May-31-2026=2***Jun-01-2026=3***Jun-02-2026=2***Jun-03-2026=2***Jun-04-2026=5***Jun-05-2026=2***Jun-06-2026=4***Jun-07-2026=2***Jun-08-2026=4***Jun-09-2026=6***Jun-10-2026=4***Jun-11-2026=7***Jun-12-2026=6***Jun-14-2026=2***Jun-15-2026=1***Jun-16-2026=3***Jun-17-2026=2***Jun-18-2026=5***Jun-19-2026=1***Jun-22-2026=1' WHERE job_id'1583522'  
0.0006   UPDATE employer_jobs SET monthly_hits '***Feb-2026=241***Mar-2026=42***Apr-2026=10***May-2026=509***Jun-2026=62' WHERE job_id'1583522'  
0.0014   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1583522' AND status LIKE 'sent%' ORDER BY id DESC  
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1583522 
0.0017   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '665119'
AND `date_added` >= '2022-06-08' 
0.0003   select from teasers 
0.0002   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)